home *** CD-ROM | disk | FTP | other *** search
/ Giga Games 1 / Giga Games.iso / net / usenet / volume7 / nethack3 / patch6e < prev    next >
Encoding:
Internet Message Format  |  1989-11-27  |  57.1 KB

  1. Path: uunet!zephyr.ens.tek.com!tekgen!tekred!saab!billr
  2. From: billr@saab.CNA.TEK.COM (Bill Randle)
  3. Newsgroups: comp.sources.games
  4. Subject: v08i058:  NetHack3 -  display oriented dungeons & dragons (Ver. 3.0), Patch6e
  5. Message-ID: <4847@tekred.CNA.TEK.COM>
  6. Date: 22 Nov 89 19:48:40 GMT
  7. Sender: nobody@tekred.CNA.TEK.COM
  8. Lines: 1612
  9. Approved: billr@saab.CNA.TEK.COM
  10.  
  11. Submitted-by: Izchak Miller <izchak@linc.cis.upenn.edu>
  12. Posting-number: Volume 8, Issue 58
  13. Archive-name: NetHack3/Patch6e
  14. Patch-To: NetHack3: Volume 7, Issue 56-93
  15.  
  16.  
  17.  
  18. #! /bin/sh
  19. # This is a shell archive.  Remove anything before this line, then unpack
  20. # it by saving it into a file and typing "sh file".  To overwrite existing
  21. # files, type "sh file -c".  You can also feed this as standard input via
  22. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  23. # will see the following message at the end:
  24. #        "End of archive 5 (of 15)."
  25. # Contents:  patches06c
  26. # Wrapped by billr@saab on Wed Nov 22 10:50:10 1989
  27. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  28. if test -f 'patches06c' -a "${1}" != "-c" ; then 
  29.   echo shar: Will not clobber existing file \"'patches06c'\"
  30. else
  31. echo shar: Extracting \"'patches06c'\" \(55103 characters\)
  32. sed "s/^X//" >'patches06c' <<'END_OF_FILE'
  33. X*** others/Old/Makefile.msc    Sun Nov 19 14:11:03 1989
  34. X--- others/Makefile.msc    Wed Nov  8 19:38:42 1989
  35. X***************
  36. X*** 285,291 ****
  37. X  o\polyself.o:  $(HACK_H)
  38. X  o\potion.o:  $(HACK_H)
  39. X  o\pray.o:  $(HACK_H)
  40. X! o\pri.o:  $(HACK_H)
  41. X  o\priest.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\eshk.h $(INCL)\epri.h
  42. X  o\prisym.o:  $(HACK_H) $(INCL)\lev.h $(INCL)\wseg.h
  43. X  o\random.o:
  44. X--- 285,291 ----
  45. X  o\polyself.o:  $(HACK_H)
  46. X  o\potion.o:  $(HACK_H)
  47. X  o\pray.o:  $(HACK_H)
  48. X! o\pri.o:  $(HACK_H) $(INCL)\termcap.h
  49. X  o\priest.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\eshk.h $(INCL)\epri.h
  50. X  o\prisym.o:  $(HACK_H) $(INCL)\lev.h $(INCL)\wseg.h
  51. X  o\random.o:
  52. X***************
  53. X*** 303,309 ****
  54. X  o\sp_lev.o:  $(HACK_H) $(INCL)\sp_lev.h
  55. X  o\spell.o:  $(HACK_H)
  56. X  o\steal.o:  $(HACK_H)
  57. X! o\termcap.o:  $(HACK_H)
  58. X  o\timeout.o:  $(HACK_H)
  59. X  o\topl.o:  $(HACK_H)
  60. X  o\topten.o:  $(HACK_H)
  61. X--- 303,309 ----
  62. X  o\sp_lev.o:  $(HACK_H) $(INCL)\sp_lev.h
  63. X  o\spell.o:  $(HACK_H)
  64. X  o\steal.o:  $(HACK_H)
  65. X! o\termcap.o:  $(HACK_H) $(INCL)\termcap.h
  66. X  o\timeout.o:  $(HACK_H)
  67. X  o\topl.o:  $(HACK_H)
  68. X  o\topten.o:  $(HACK_H)
  69. X*** others/Old/Makefile.os2    Sun Nov 19 14:11:25 1989
  70. X--- others/Makefile.os2    Wed Nov  8 19:38:50 1989
  71. X***************
  72. X*** 300,306 ****
  73. X  o\polyself.o:  $(HACK_H)
  74. X  o\potion.o:  $(HACK_H)
  75. X  o\pray.o:  $(HACK_H)
  76. X! o\pri.o:  $(HACK_H)
  77. X  o\priest.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\eshk.h $(INCL)\epri.h
  78. X  o\prisym.o:  $(HACK_H) $(INCL)\lev.h $(INCL)\wseg.h
  79. X  o\random.o:
  80. X--- 300,306 ----
  81. X  o\polyself.o:  $(HACK_H)
  82. X  o\potion.o:  $(HACK_H)
  83. X  o\pray.o:  $(HACK_H)
  84. X! o\pri.o:  $(HACK_H) $(INCL)\termcap.h
  85. X  o\priest.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\eshk.h $(INCL)\epri.h
  86. X  o\prisym.o:  $(HACK_H) $(INCL)\lev.h $(INCL)\wseg.h
  87. X  o\random.o:
  88. X***************
  89. X*** 318,324 ****
  90. X  o\sp_lev.o:  $(HACK_H) $(INCL)\sp_lev.h
  91. X  o\spell.o:  $(HACK_H)
  92. X  o\steal.o:  $(HACK_H)
  93. X! o\termcap.o:  $(HACK_H)
  94. X  o\timeout.o:  $(HACK_H)
  95. X  o\topl.o:  $(HACK_H)
  96. X  o\topten.o:  $(HACK_H)
  97. X--- 318,324 ----
  98. X  o\sp_lev.o:  $(HACK_H) $(INCL)\sp_lev.h
  99. X  o\spell.o:  $(HACK_H)
  100. X  o\steal.o:  $(HACK_H)
  101. X! o\termcap.o:  $(HACK_H) $(INCL)\termcap.h
  102. X  o\timeout.o:  $(HACK_H)
  103. X  o\topl.o:  $(HACK_H)
  104. X  o\topten.o:  $(HACK_H)
  105. X*** /dev/null    Sun Nov 19 23:20:35 1989
  106. X--- others/Makefile.ovl    Sun Nov 19 23:20:10 1989
  107. X***************
  108. X*** 0
  109. X
  110. X--- 1,451 -----
  111. X+ #    SCCS Id: @(#)Makefile.ovl    3.0    89/11/16
  112. X+ #    PC NetHack 3.0 Makefile for Microsoft(tm) "C" 5.1 -- Pierre Martineau
  113. X+ #    Overlay Arrangement -- Stephen Spackman, Pierre Martineau, Norm Meluch
  114. X+ #
  115. X+ #     Other things that have to be reconfigured are in config.h,
  116. X+ #     {unixconf.h, pcconf.h, tosconf.h}, and possibly system.h
  117. X+ #
  118. X+ #     In addition to your C compiler,
  119. X+ #
  120. X+ #     if you want to change    you will need a        and a rule in 
  121. X+ #     files with suffix    workalike for        Make.ini called
  122. X+ #       .y              yacc              .y.c
  123. X+ #       .l              lex              .l.c
  124. X+ #       .asm              masm
  125. X+ #
  126. X+ # ******************************************************************************
  127. X+ # ************************ Compiler Info ***************************************
  128. X+ # ******************************************************************************
  129. X+ # Large memory model, register bug, remove stack probes:
  130. X+ CC    = cl /c
  131. X+ LINK    = link
  132. X+ MODEL    = L
  133. X+ ASM    = masm
  134. X+ # 286 or higher machines can use the /G2 CFLAG option for better performance.
  135. X+ CFLAGS    = /A$(MODEL) /Os /Oa /Gs /Gt24 /Zp1 /W0 /I$(INCL)
  136. X+ LFLAGS    = /noi /seg:512 /map /st:4096 /cp:1
  137. X+ AFLAGS    = /MX
  138. X+ # ******************************************************************************
  139. X+ # ********* Directories (makedefs hardcodes these, don't change them) **********
  140. X+ # ******************************************************************************
  141. X+ INCL    = ..\include
  142. X+ AUX    = ..\auxil
  143. X+ SRC    = ..\src
  144. X+ OTHERS    = ..\others
  145. X+ OBJ    = $(SRC)\o
  146. X+ # ******************************************************************************
  147. X+ # ************************ Local Variables *************************************
  148. X+ # ******************************************************************************
  149. X+ # The game name
  150. X+ GAME     = nethack
  151. X+ 
  152. X+ # Default main target
  153. X+ MAINTARG : $(GAME)
  154. X+ 
  155. X+ # The game directory
  156. X+ # make sure GAMEDIR exists!
  157. X+ GAMEDIR  = \games
  158. X+ 
  159. X+ # The game filename
  160. X+ GAMEFILE = $(GAMEDIR)\$(GAME).exe
  161. X+ 
  162. X+ # Overlay manager object file.
  163. X+ OVLMGR     = ovlmgr.obj
  164. X+ 
  165. X+ # Switch the following line if you have made changes in ovlmgr.asm
  166. X+ # $(OBJ)\$(OVLMGR):
  167. X+ $(OBJ)\$(OVLMGR): ; copy $(OTHERS)\$(OVLMGR) $(OBJ)\$(OVLMGR)
  168. X+ 
  169. X+ # Optional high-quality BSD random number generation routines (see pcconf.h).
  170. X+ # Set to nothing if not used.
  171. X+ RANDOM     = $(OBJ)\random.o
  172. X+ # RANDOM =
  173. X+ 
  174. X+ # Target prefix
  175. X+ TARG     = pc
  176. X+ 
  177. X+ # Optional C library specifier for those with non-standard libraries
  178. X+ # CLIB       = llibcer /nod
  179. X+ CLIB     =
  180. X+ 
  181. X+ # The TERMLIB line may be commented out if TERMLIB isn't defined in the source
  182. X+ # TERMLIB  =
  183. X+ TERMLIB  = $(SRC)\termlib.lib
  184. X+ # ******************************************************************************
  185. X+ # ************************ Begin Structure Definition **************************
  186. X+ # ******************************************************************************
  187. X+ #
  188. X+ # nothing below this line should have to be changed
  189. X+ #
  190. X+ ROOT =    $(OBJ)\main.o $(OBJ)\allmain.o $(OBJ)\termcap.o $(OBJ)\cmd.o \
  191. X+     $(OBJ)\trampoli.o $(OBJ)\hack.o $(OBJ)\msdos.o $(OBJ)\$(OVLMGR)
  192. X+ 
  193. X+ # These are the overlays; the Microsoft linker limits them to 63.
  194. X+ #
  195. X+ OVL01 = $(OBJ)\rip.o $(OBJ)\topten.o $(OBJ)\end.o
  196. X+ OVL02 = $(OBJ)\lock.o
  197. X+ OVL03 = $(OBJ)\artifact.o
  198. X+ OVL04 = $(OBJ)\mklev.o $(OBJ)\mkroom.o
  199. X+ OVL05 = $(OBJ)\trap.o
  200. X+ OVL06 = $(OBJ)\read.o
  201. X+ OVL07 = $(OBJ)\dbridge.o
  202. X+ OVL08 = $(OBJ)\u_init.o
  203. X+ OVL09 = $(OBJ)\eat.o $(OBJ)\rumors.o
  204. X+ OVL10 = $(OBJ)\do_wear.o
  205. X+ OVL11 = $(OBJ)\restore.o $(OBJ)\save.o $(OBJ)\bones.o
  206. X+ OVL12 = $(OBJ)\search.o
  207. X+ OVL13 = $(OBJ)\weapon.o
  208. X+ OVL14 = $(OBJ)\mon.o
  209. X+ OVL15 = $(OBJ)\dokick.o
  210. X+ OVL16 = $(OBJ)\priest.o
  211. X+ OVL17 = $(OBJ)\steal.o
  212. X+ OVL18 = $(OBJ)\potion.o
  213. X+ OVL19 = $(OBJ)\mcastu.o
  214. X+ OVL20 = $(OBJ)\exper.o
  215. X+ OVL21 = $(OBJ)\extralev.o
  216. X+ OVL22 = $(OBJ)\pager.o
  217. X+ OVL23 = $(OBJ)\dog.o $(OBJ)\dogmove.o
  218. X+ OVL24 = $(OBJ)\sit.o $(OBJ)\fountain.o
  219. X+ OVL25 = $(OBJ)\sounds.o
  220. X+ OVL26 = $(OBJ)\worn.o
  221. X+ OVL27 = $(OBJ)\were.o $(OBJ)\demon.o
  222. X+ OVL28 = $(OBJ)\mhitm.o
  223. X+ OVL29 = $(OBJ)\attrib.o
  224. X+ OVL30 = $(OBJ)\unix.o
  225. X+ OVL31 = $(OBJ)\engrave.o
  226. X+ OVL32 = $(OBJ)\getline.o
  227. X+ OVL33 = $(OBJ)\wizard.o
  228. X+ OVL34 = $(OBJ)\worm.o
  229. X+ OVL35 = $(OBJ)\mthrowu.o
  230. X+ OVL36 = $(OBJ)\music.o
  231. X+ OVL37 = $(OBJ)\zap.o
  232. X+ OVL38 = $(OBJ)\pri.o $(OBJ)\prisym.o
  233. X+ OVL39 = $(OBJ)\objnam.o
  234. X+ OVL40 = $(OBJ)\write.o
  235. X+ OVL41 = $(OBJ)\mondata.o
  236. X+ OVL42 = $(OBJ)\dothrow.o
  237. X+ OVL43 = $(OBJ)\monst.o $(OBJ)\objects.o $(OBJ)\mail.o $(OBJ)\alloc.o $(OBJ)\tty.o $(OBJ)\topl.o
  238. X+ OVL44 = $(OBJ)\monmove.o
  239. X+ OVL45 = $(OBJ)\mkmaze.o $(OBJ)\sp_lev.o
  240. X+ OVL46 = $(OBJ)\makemon.o
  241. X+ OVL47 = $(OBJ)\apply.o
  242. X+ OVL48 = $(OBJ)\decl.o $(OBJ)\polyself.o
  243. X+ OVL49 = $(OBJ)\do.o
  244. X+ OVL50 = $(OBJ)\spell.o
  245. X+ OVL51 = $(OBJ)\uhitm.o
  246. X+ OVL52 = $(OBJ)\invent.o
  247. X+ OVL53 = $(OBJ)\wield.o
  248. X+ OVL54 = $(OBJ)\mkobj.o $(OBJ)\o_init.o
  249. X+ OVL55 = $(OBJ)\shk.o $(OBJ)\shknam.o
  250. X+ OVL56 = $(OBJ)\pickup.o
  251. X+ OVL57 = $(OBJ)\pray.o
  252. X+ OVL58 = $(OBJ)\options.o
  253. X+ OVL59 = $(OBJ)\do_name.o
  254. X+ OVL60 = $(OBJ)\rnd.o $(RANDOM)
  255. X+ OVL61 = $(OBJ)\vault.o
  256. X+ OVL62 = $(OBJ)\mhitu.o
  257. X+ OVL63 = $(OBJ)\version.o $(OBJ)\track.o $(OBJ)\timeout.o
  258. X+ 
  259. X+ #
  260. X+ # ******************************************************************************
  261. X+ # ************************* Make Objects ***************************************
  262. X+ # ******************************************************************************
  263. X+ #
  264. X+ MOBJ =    $(OVL01) $(OVL02) $(OVL03) $(OVL04) $(OVL05) $(OVL06) $(OVL07) $(OVL08) \
  265. X+     $(OVL09) $(OVL10) $(OVL11) $(OVL12) $(OVL13) $(OVL14) $(OVL15) $(OVL16) \
  266. X+     $(OVL17) $(OVL18) $(OVL19) $(OVL20) $(OVL21) $(OVL22) $(OVL23) $(OVL24) \
  267. X+     $(OVL25) $(OVL26) $(OVL27) $(OVL28) $(OVL29) $(OVL30) $(OVL31) $(OVL32) \
  268. X+     $(OVL33) $(OVL34) $(OVL35) $(OVL36) $(OVL37) $(OVL38) $(OVL39) $(OVL40) \
  269. X+     $(OVL41) $(OVL42) $(OVL43) $(OVL44) $(OVL45) $(OVL46) $(OVL47) $(OVL48) \
  270. X+     $(OVL49) $(OVL50) $(OVL51) $(OVL52) $(OVL53) $(OVL54) $(OVL55) $(OVL56) \
  271. X+     $(OVL57) $(OVL58) $(OVL59) $(OVL60) $(OVL61) $(OVL62)
  272. X+ 
  273. X+ VOBJ =    $(ROOT) $(MOBJ)
  274. X+ 
  275. X+ HOBJ =    $(VOBJ) $(OVL63)
  276. X+ 
  277. X+ # object files for makedefs
  278. X+ MAKEOBJS    =    $(OBJ)\makedefs.o $(OBJ)\alloc.o    $(OBJ)\monst.o    \
  279. X+         $(OBJ)\objects.o  $(OBJ)\panic.o
  280. X+ 
  281. X+ OVERLAYS = ($(OVL01)) ($(OVL02)) ($(OVL03)) ($(OVL04)) ($(OVL05)) ($(OVL06)) \
  282. X+        ($(OVL07)) ($(OVL08)) ($(OVL09)) ($(OVL10)) ($(OVL11)) ($(OVL12)) \
  283. X+        ($(OVL13)) ($(OVL14)) ($(OVL15)) ($(OVL16)) ($(OVL17)) ($(OVL18)) \
  284. X+        ($(OVL19)) ($(OVL20)) ($(OVL21)) ($(OVL22)) ($(OVL23)) ($(OVL24)) \
  285. X+        ($(OVL25)) ($(OVL26)) ($(OVL27)) ($(OVL28)) ($(OVL29)) ($(OVL30)) \
  286. X+        ($(OVL31)) ($(OVL32)) ($(OVL33)) ($(OVL34)) ($(OVL35)) ($(OVL36)) \
  287. X+        ($(OVL37)) ($(OVL38)) ($(OVL39)) ($(OVL40)) ($(OVL41)) ($(OVL42)) \
  288. X+        ($(OVL43)) ($(OVL44)) ($(OVL45)) ($(OVL46)) ($(OVL47)) ($(OVL48)) \
  289. X+        ($(OVL49)) ($(OVL50)) ($(OVL51)) ($(OVL52)) ($(OVL53)) ($(OVL54)) \
  290. X+        ($(OVL55)) ($(OVL56)) ($(OVL57)) ($(OVL58)) ($(OVL59)) ($(OVL60)) \
  291. X+        ($(OVL61)) ($(OVL62)) ($(OVL63))
  292. X+ 
  293. X+ # object files for special levels compiler
  294. X+ SPLEVOBJS   =    $(OBJ)\lev_comp.o $(OBJ)\lev_lex.o  $(OBJ)\lev_main.o \
  295. X+         $(OBJ)\alloc.o      $(OBJ)\monst.o    $(OBJ)\objects.o  \
  296. X+         $(OBJ)\panic.o
  297. X+ 
  298. X+ TL_LOBJECTS =    $(OBJ)\tgetent.o  $(OBJ)\tgetflag.o $(OBJ)\tgetnum.o  \
  299. X+         $(OBJ)\tgetstr.o  $(OBJ)\tgoto.o    $(OBJ)\tputs.o    \
  300. X+         $(OBJ)\isdigit.o  $(OBJ)\fgetlr.o
  301. X+ 
  302. X+ # ******************************************************************************
  303. X+ # ************************** Header Objects ************************************
  304. X+ # ******************************************************************************
  305. X+ 
  306. X+ TRAP_H       = $(INCL)\trap.h
  307. X+ PERMONST_H = $(INCL)\permonst.h    $(INCL)\monflag.h
  308. X+ PCCONF_H   = $(INCL)\$(TARG)conf.h $(INCL)\extern.h   $(INCL)\msdos.h \
  309. X+          $(INCL)\system.h
  310. X+ GLOBAL_H   = $(PCCONF_H)       $(INCL)\coord.h    $(INCL)\global.h
  311. X+ CONFIG_H   = $(GLOBAL_H)       $(INCL)\config.h   $(INCL)\tradstdc.h
  312. X+ YOU_H       = $(PERMONST_H)       $(INCL)\attrib.h   $(INCL)\mondata.h \
  313. X+          $(INCL)\monst.h       $(INCL)\you.h      $(INCL)\youprop.h
  314. X+ DECL_H       = $(YOU_H)           $(INCL)\decl.h     $(INCL)\obj.h \
  315. X+          $(INCL)\onames.h       $(INCL)\pm.h       $(INCL)\spell.h
  316. X+ HACK_H       = $(CONFIG_H)       $(DECL_H)          $(TRAP_H) \
  317. X+          $(INCL)\flag.h       $(INCL)\gold.h     $(INCL)\mkroom.h \
  318. X+          $(INCL)\monsym.h       $(INCL)\objclass.h $(INCL)\rm.h \
  319. X+          $(INCL)\trampoli.h
  320. X+ 
  321. X+ # ******************************************************************************
  322. X+ # ************************ File Dependencies ***********************************
  323. X+ # ******************************************************************************
  324. X+ 
  325. X+ .SUFFIXES: .exe .o .c .y .l .obj .asm
  326. X+ 
  327. X+ .c.o:
  328. X+     $(CC) $(CFLAGS) /Fo$(OBJ)\$*.o $*.c
  329. X+ 
  330. X+ .asm.obj:
  331. X+     $(ASM) $(AFLAGS) $*.asm,$(OBJ)\$*.obj ;
  332. X+ 
  333. X+ $(GAME): $(GAMEFILE)
  334. X+ 
  335. X+ $(GAME).exe: $(GAMEFILE)
  336. X+ 
  337. X+ $(GAMEFILE): $(OBJ) $(HOBJ) $(TERMLIB)
  338. X+     @echo Loading....
  339. X+     $(LINK) $(ROOT) $(OVERLAYS),$(GAMEFILE),$(GAME),$(CLIB) $(TERMLIB) $(LFLAGS) ;
  340. X+     @echo Nethack is up to date.
  341. X+ 
  342. X+ $(OBJ):
  343. X+     if not exist .\$(OBJ)\*.* mkdir $(OBJ)
  344. X+     if not exist $(GAMEDIR)   mkdir $(GAMEDIR)
  345. X+     if not exist $(GAMEDIR)   mkdir $(GAMEDIR)\bones
  346. X+ 
  347. X+ $(TERMLIB):    $(TL_LOBJECTS)
  348. X+         lib $(TERMLIB) -+ $(TL_LOBJECTS);
  349. X+ 
  350. X+ #
  351. X+ #    The following 3 programs vary depending on what OS you are using.
  352. X+ #
  353. X+ 
  354. X+ $(OBJ)\main.o:    $(HACK_H) $(TARG)main.c
  355. X+     $(CC) $(CFLAGS)  /Fo.\$(OBJ)\main.o $(TARG)main.c
  356. X+ 
  357. X+ $(OBJ)\tty.o:    $(HACK_H) $(INCL)\func_tab.h $(TARG)tty.c
  358. X+     $(CC) $(CFLAGS)  /Fo.\$(OBJ)\tty.o  $(TARG)tty.c
  359. X+ 
  360. X+ $(OBJ)\unix.o:    $(HACK_H) $(TARG)unix.c
  361. X+     $(CC) $(CFLAGS)  /Fo.\$(OBJ)\unix.o $(TARG)unix.c
  362. X+ 
  363. X+ $(OBJ)\makedefs.o:    $(INCL)\config.h $(INCL)\permonst.h $(INCL)\objclass.h
  364. X+ 
  365. X+ makedefs.exe:    $(MAKEOBJS)
  366. X+     $(LINK) $(LFLAGS) $(MAKEOBJS), makedefs.exe,, $(CLIB);
  367. X+ 
  368. X+ lev_comp.exe:    $(SPLEVOBJS)
  369. X+     $(LINK) $(LFLAGS) $(SPLEVOBJS),lev_comp.exe,, $(CLIB);
  370. X+ 
  371. X+ # If you have yacc or lex programs, and make any changes,
  372. X+ # add some .y.c and .l.c rules to your Make.ini.
  373. X+ #
  374. X+ #lev_comp.c:    lev_comp.y
  375. X+ #lev_lex.c:    lev_comp.l
  376. X+ 
  377. X+ # ******************************************************************************
  378. X+ # *************************  Makedefs Stuff ************************************
  379. X+ # ******************************************************************************
  380. X+ #    The following include files depend on makedefs to be created.
  381. X+ #    date.h should be remade any time any of the source or include code
  382. X+ #    is modified.
  383. X+ #
  384. X+ $(INCL)\date.h: $(VOBJ) makedefs.exe
  385. X+     .\makedefs -v
  386. X+ 
  387. X+ $(INCL)\trap.h:     makedefs.exe
  388. X+     .\makedefs -t
  389. X+ 
  390. X+ $(INCL)\onames.h:    makedefs.exe
  391. X+     .\makedefs -o
  392. X+ 
  393. X+ $(INCL)\pm.h:        makedefs.exe
  394. X+     .\makedefs -p
  395. X+ 
  396. X+ data:    $(AUX)\data.bas makedefs.exe
  397. X+     .\makedefs -d
  398. X+ 
  399. X+ rumors: $(AUX)\rumors.tru $(AUX)\rumors.fal makedefs.exe
  400. X+     .\makedefs -r
  401. X+ 
  402. X+ # ******************************************************************************
  403. X+ # ************************ Secondary targets ***********************************
  404. X+ # ******************************************************************************
  405. X+ 
  406. X+ install:    $(OBJ) lev_comp.exe $(GAMEFILE) auxil.tag install.tag
  407. X+     @echo Don't forget to check HACKDIR in nethack.cnf.
  408. X+     @echo Done.
  409. X+ 
  410. X+ #
  411. X+ #    Watch Out!  This make cleans out the game & bones dirs!
  412. X+ #    This will delete any config file you have and overwrite it
  413. X+ #    with the default.
  414. X+ #    Since the game options may have changed since your last install,
  415. X+ #    you should say yes to clean the directory.
  416. X+ #
  417. X+ install.tag:
  418. X+     copy $(OTHERS)\termcap        $(GAMEDIR)
  419. X+     copy $(AUX)\*.            $(GAMEDIR)
  420. X+     copy $(OTHERS)\nethack.cnf    $(GAMEDIR)
  421. X+     echo record > $(GAMEDIR)\record
  422. X+     echo install done > install.tag
  423. X+ 
  424. X+ spec_lev.tag: lev_comp.exe $(AUX)\castle.des $(AUX)\endgame.des $(AUX)\tower.des
  425. X+     lev_comp $(AUX)\castle.des
  426. X+     lev_comp $(AUX)\endgame.des
  427. X+     lev_comp $(AUX)\tower.des
  428. X+     copy castle $(GAMEDIR)
  429. X+     copy endgame $(GAMEDIR)
  430. X+     copy tower? $(GAMEDIR)
  431. X+     echo spec_lev done > spec_lev.tag
  432. X+ 
  433. X+ auxil.tag:    spec_lev.tag    data    rumors
  434. X+     echo special levels created > auxil.tag
  435. X+ 
  436. X+ clean:
  437. X+     del $(OBJ)\*.o
  438. X+     del $(OBJ)\*.obj
  439. X+     rmdir $(OBJ)
  440. X+ 
  441. X+ spotless: clean
  442. X+     del $(INCL)\date.h
  443. X+     del $(INCL)\onames.h
  444. X+     del $(INCL)\pm.h
  445. X+     if exist makedefs.exe del makedefs.exe
  446. X+     if exist lev_comp.exe del lev_comp.exe
  447. X+     del castle
  448. X+     del endgame
  449. X+     del tower?
  450. X+     del *.bak
  451. X+     del *.tag
  452. X+     del *.map
  453. X+     del *.lib
  454. X+     del *.txt
  455. X+     del $(AUX)\data
  456. X+     del $(AUX)\rumors
  457. X+ 
  458. X+ # ******************************************************************************
  459. X+ # ************************* Other dependencies *********************************
  460. X+ # ******************************************************************************
  461. X+ # Other dependencies
  462. X+ #
  463. X+ # I deleted that line.    ;-}
  464. X+ #
  465. X+ $(OBJ)\allmain.o:    $(HACK_H)
  466. X+ $(OBJ)\alloc.o:     $(CONFIG_H)
  467. X+ $(OBJ)\apply.o:     $(HACK_H)   $(INCL)\edog.h
  468. X+ $(OBJ)\artifact.o:    $(HACK_H)   $(INCL)\artifact.h
  469. X+ $(OBJ)\attrib.o:    $(HACK_H)
  470. X+ $(OBJ)\bones.o:     $(HACK_H)
  471. X+ $(OBJ)\cmd.o:        $(HACK_H)   $(INCL)\func_tab.h
  472. X+ $(OBJ)\dbridge.o:    $(HACK_H)
  473. X+ $(OBJ)\decl.o:        $(HACK_H)
  474. X+ $(OBJ)\demon.o:     $(HACK_H)
  475. X+ $(OBJ)\do.o:        $(HACK_H)
  476. X+ $(OBJ)\do_name.o:    $(HACK_H)
  477. X+ $(OBJ)\do_wear.o:    $(HACK_H)
  478. X+ $(OBJ)\dog.o:        $(HACK_H)   $(INCL)\edog.h
  479. X+ $(OBJ)\dogmove.o:    $(HACK_H)   $(INCL)\mfndpos.h     $(INCL)\edog.h
  480. X+ $(OBJ)\dokick.o:    $(HACK_H)
  481. X+ $(OBJ)\dothrow.o:    $(HACK_H)
  482. X+ $(OBJ)\eat.o:        $(HACK_H)
  483. X+ $(OBJ)\end.o:        $(HACK_H)   $(INCL)\eshk.h
  484. X+ $(OBJ)\engrave.o:    $(HACK_H)
  485. X+ $(OBJ)\exper.o:     $(HACK_H)
  486. X+ $(OBJ)\extralev.o:    $(HACK_H)
  487. X+ $(OBJ)\fountain.o:    $(HACK_H)
  488. X+ $(OBJ)\getline.o:    $(HACK_H)   $(INCL)\func_tab.h
  489. X+ $(OBJ)\hack.o:        $(HACK_H)
  490. X+ $(OBJ)\invent.o:    $(HACK_H)   $(INCL)\lev.h     $(INCL)\wseg.h
  491. X+ $(OBJ)\ioctl.o:     $(HACK_H)
  492. X+ $(OBJ)\lev_comp.o:    $(HACK_H)   $(INCL)\sp_lev.h
  493. X+ $(OBJ)\lev_lex.o:    $(HACK_H)   $(INCL)\sp_lev.h     $(INCL)\lev_comp.h
  494. X+ $(OBJ)\lev_main.o:    $(HACK_H)   $(INCL)\sp_lev.h
  495. X+ $(OBJ)\lock.o:        $(HACK_H)
  496. X+ $(OBJ)\makemon.o:    $(HACK_H)
  497. X+ $(OBJ)\mail.o:        $(HACK_H)
  498. X+ $(OBJ)\mcastu.o:    $(HACK_H)
  499. X+ $(OBJ)\mhitm.o:     $(HACK_H)   $(INCL)\artifact.h
  500. X+ $(OBJ)\mhitu.o:     $(HACK_H)   $(INCL)\artifact.h     $(INCL)\edog.h
  501. X+ $(OBJ)\mklev.o:     $(HACK_H)
  502. X+ $(OBJ)\mkmaze.o:    $(HACK_H)
  503. X+ $(OBJ)\mkobj.o:     $(HACK_H)
  504. X+ $(OBJ)\mkroom.o:    $(HACK_H)
  505. X+ $(OBJ)\mon.o:        $(HACK_H)   $(INCL)\mfndpos.h     $(INCL)\artifact.h
  506. X+ $(OBJ)\mondata.o:    $(HACK_H)   $(INCL)\eshk.h     $(INCL)\epri.h
  507. X+ $(OBJ)\monmove.o:    $(HACK_H)   $(INCL)\mfndpos.h     $(INCL)\artifact.h
  508. X+ $(OBJ)\monst.o:     $(CONFIG_H) $(PERMONST_H)     $(INCL)\eshk.h     \
  509. X+             $(INCL)\epri.h $(INCL)\vault.h
  510. X+ $(OBJ)\msdos.o:     $(HACK_H)
  511. X+ $(OBJ)\mthrowu.o:    $(HACK_H)
  512. X+ $(OBJ)\music.o:     $(HACK_H)
  513. X+ $(OBJ)\o_init.o:    $(HACK_H)   $(INCL)\onames.h
  514. X+ $(OBJ)\objects.o:    $(CONFIG_H) $(INCL)\obj.h     $(INCL)\objclass.h \
  515. X+             $(INCL)\prop.h
  516. X+ $(OBJ)\objnam.o:    $(HACK_H)
  517. X+ $(OBJ)\options.o:    $(HACK_H)
  518. X+ $(OBJ)\pager.o:     $(HACK_H)
  519. X+ $(OBJ)\panic.o:     $(CONFIG_H)
  520. X+ $(OBJ)\pickup.o:    $(HACK_H)
  521. X+ $(OBJ)\polyself.o:    $(HACK_H)
  522. X+ $(OBJ)\potion.o:    $(HACK_H)
  523. X+ $(OBJ)\pray.o:        $(HACK_H)
  524. X+ $(OBJ)\pri.o:        $(HACK_H)
  525. X+ $(OBJ)\priest.o:    $(HACK_H)   $(INCL)\mfndpos.h     $(INCL)\eshk.h \
  526. X+             $(INCL)\epri.h
  527. X+ $(OBJ)\prisym.o:    $(HACK_H)   $(INCL)\lev.h     $(INCL)\wseg.h
  528. X+ $(OBJ)\random.o:
  529. X+ $(OBJ)\read.o:        $(HACK_H)
  530. X+ $(OBJ)\restore.o:    $(HACK_H)   $(INCL)\lev.h     $(INCL)\wseg.h
  531. X+ $(OBJ)\rip.o:        $(HACK_H)
  532. X+ $(OBJ)\rnd.o:        $(HACK_H)
  533. X+ $(OBJ)\rumors.o:    $(HACK_H)
  534. X+ $(OBJ)\save.o:        $(HACK_H)   $(INCL)\lev.h     $(INCL)\wseg.h
  535. X+ $(OBJ)\search.o:    $(HACK_H)   $(INCL)\artifact.h
  536. X+ $(OBJ)\shk.o:        $(HACK_H)   $(INCL)\eshk.h
  537. X+ $(OBJ)\shknam.o:    $(HACK_H)   $(INCL)\eshk.h
  538. X+ $(OBJ)\sit.o:        $(HACK_H)
  539. X+ $(OBJ)\sounds.o:    $(HACK_H)   $(INCL)\edog.h     $(INCL)\eshk.h
  540. X+ $(OBJ)\sp_lev.o:    $(HACK_H)   $(INCL)\sp_lev.h
  541. X+ $(OBJ)\spell.o:     $(HACK_H)
  542. X+ $(OBJ)\steal.o:     $(HACK_H)
  543. X+ $(OBJ)\termcap.o:    $(HACK_H)
  544. X+ $(OBJ)\timeout.o:    $(HACK_H)
  545. X+ $(OBJ)\topl.o:        $(HACK_H)
  546. X+ $(OBJ)\topten.o:    $(HACK_H)
  547. X+ $(OBJ)\track.o:     $(HACK_H)
  548. X+ $(OBJ)\trampoli.o:    $(HACK_H)
  549. X+ $(OBJ)\trap.o:        $(HACK_H)   $(INCL)\edog.h     $(INCL)\trapname.h
  550. X+ $(OBJ)\u_init.o:    $(HACK_H)
  551. X+ $(OBJ)\uhitm.o:     $(HACK_H)   $(INCL)\artifact.h
  552. X+ $(OBJ)\vault.o:     $(HACK_H)   $(INCL)\vault.h
  553. X+ $(OBJ)\version.o:    $(HACK_H)   $(INCL)\date.h
  554. X+ $(OBJ)\weapon.o:    $(HACK_H)
  555. X+ $(OBJ)\were.o:        $(HACK_H)
  556. X+ $(OBJ)\wield.o:     $(HACK_H)
  557. X+ $(OBJ)\wizard.o:    $(HACK_H)
  558. X+ $(OBJ)\worm.o:        $(HACK_H)   $(INCL)\wseg.h
  559. X+ $(OBJ)\worn.o:        $(HACK_H)
  560. X+ $(OBJ)\write.o:     $(HACK_H)
  561. X+ $(OBJ)\zap.o:        $(HACK_H)
  562. X*** others/Old/Makefile.pc    Sun Nov 19 14:12:08 1989
  563. X--- others/Makefile.pc    Wed Nov  8 19:38:55 1989
  564. X***************
  565. X*** 244,250 ****
  566. X  o\polyself.o:  $(HACK_H)
  567. X  o\potion.o:  $(HACK_H)
  568. X  o\pray.o:  $(HACK_H)
  569. X! o\pri.o:  $(HACK_H)
  570. X  o\priest.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\eshk.h $(INCL)\epri.h
  571. X  o\prisym.o:  $(HACK_H) $(INCL)\lev.h $(INCL)\wseg.h
  572. X  o\random.o:
  573. X--- 244,250 ----
  574. X  o\polyself.o:  $(HACK_H)
  575. X  o\potion.o:  $(HACK_H)
  576. X  o\pray.o:  $(HACK_H)
  577. X! o\pri.o:  $(HACK_H) $(INCL)\termcap.h
  578. X  o\priest.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\eshk.h $(INCL)\epri.h
  579. X  o\prisym.o:  $(HACK_H) $(INCL)\lev.h $(INCL)\wseg.h
  580. X  o\random.o:
  581. X***************
  582. X*** 262,268 ****
  583. X  o\sp_lev.o:  $(HACK_H) $(INCL)\sp_lev.h
  584. X  o\spell.o:  $(HACK_H)
  585. X  o\steal.o:  $(HACK_H)
  586. X! o\termcap.o:  $(HACK_H)
  587. X  o\timeout.o:  $(HACK_H)
  588. X  o\topl.o:  $(HACK_H)
  589. X  o\topten.o:  $(HACK_H)
  590. X--- 262,268 ----
  591. X  o\sp_lev.o:  $(HACK_H) $(INCL)\sp_lev.h
  592. X  o\spell.o:  $(HACK_H)
  593. X  o\steal.o:  $(HACK_H)
  594. X! o\termcap.o:  $(HACK_H) $(INCL)\termcap.h
  595. X  o\timeout.o:  $(HACK_H)
  596. X  o\topl.o:  $(HACK_H)
  597. X  o\topten.o:  $(HACK_H)
  598. X*** others/Old/Makefile.st    Sun Nov 19 14:12:25 1989
  599. X--- others/Makefile.st    Mon Nov 13 21:19:34 1989
  600. X***************
  601. X*** 3,12 ****
  602. X  #
  603. X  #    NOTE: There's one really awful kludge here: I had to break
  604. X  #    monst.o up into two pieces to get it to compile on my machine
  605. X! #    (a Mega 2). If you've got 2.5 megs or more, you can (and probably
  606. X! #    should) replace "monst1.o monst2.o" by "monst.o", and delete
  607. X! #    the dependencies for monst1.o and monst2.o. If they ever change
  608. X! #    the loader, this kludge might break.
  609. X  #
  610. X  CC    = d:\gnu\bin\gcc.ttp
  611. X  LD    = d:\gnu\bin\gcc-ld.ttp
  612. X--- 3,12 ----
  613. X  #
  614. X  #    NOTE: There's one really awful kludge here: I had to break
  615. X  #    monst.o up into two pieces to get it to compile on my machine
  616. X! #    (a Mega 2). You'll need "sed" to get this to work.
  617. X! #    If you have 2.5 megs or more, you can probably delete the
  618. X! #    strange dependency lines for monst.o and just compile
  619. X! #    it directly.
  620. X  #
  621. X  CC    = d:\gnu\bin\gcc.ttp
  622. X  LD    = d:\gnu\bin\gcc-ld.ttp
  623. X***************
  624. X*** 26,32 ****
  625. X  AUX    = ..\auxil
  626. X  SRC    = ..\src
  627. X  
  628. X! CFLAGS    = $(MODEL) -O -I..\include
  629. X  LFLAGS    = $(MODEL) -s
  630. X  TARG    = tos
  631. X  PC    = pc
  632. X--- 26,32 ----
  633. X  AUX    = ..\auxil
  634. X  SRC    = ..\src
  635. X  
  636. X! CFLAGS    = $(MODEL) -O -fomit-frame-pointer -I..\include
  637. X  LFLAGS    = $(MODEL) -s
  638. X  TARG    = tos
  639. X  PC    = pc
  640. X***************
  641. X*** 45,55 ****
  642. X  GAMEFILE = $(GAMEDIR)\$(GAME).ttp
  643. X  
  644. X  # object files for makedefs
  645. X! MAKEOBJS = makedefs.o alloc.o monst1.o monst2.o objects.o panic.o
  646. X  
  647. X  # object files for special levels compiler
  648. X  SPLEVOBJS = lev_comp.o lev_lex.o \
  649. X!     lev_main.o alloc.o monst1.o monst2.o objects.o panic.o
  650. X  
  651. X  # nothing below this line should have to be changed
  652. X  #
  653. X--- 45,55 ----
  654. X  GAMEFILE = $(GAMEDIR)\$(GAME).ttp
  655. X  
  656. X  # object files for makedefs
  657. X! MAKEOBJS = makedefs.o alloc.o monst.o objects.o panic.o
  658. X  
  659. X  # object files for special levels compiler
  660. X  SPLEVOBJS = lev_comp.o lev_lex.o \
  661. X!     lev_main.o alloc.o monst.o objects.o panic.o
  662. X  
  663. X  # nothing below this line should have to be changed
  664. X  #
  665. X***************
  666. X*** 62,68 ****
  667. X       eat.o end.o engrave.o exper.o extralev.o fountain.o getline.o hack.o \
  668. X      invent.o lock.o main.o makemon.o mcastu.o mhitm.o \
  669. X      mhitu.o mklev.o mkmaze.o mkobj.o mkroom.o mon.o mondata.o monmove.o \
  670. X!     monst1.o  monst2.o mthrowu.o msdos.o music.o o_init.o objects.o \
  671. X      objnam.o options.o pager.o \
  672. X      pickup.o polyself.o potion.o pray.o pri.o priest.o prisym.o read.o \
  673. X      restore.o rip.o rnd.o rumors.o save.o search.o shk.o shknam.o sit.o \
  674. X--- 62,68 ----
  675. X       eat.o end.o engrave.o exper.o extralev.o fountain.o getline.o hack.o \
  676. X      invent.o lock.o main.o makemon.o mcastu.o mhitm.o \
  677. X      mhitu.o mklev.o mkmaze.o mkobj.o mkroom.o mon.o mondata.o monmove.o \
  678. X!     monst.o  mthrowu.o msdos.o music.o o_init.o objects.o \
  679. X      objnam.o options.o pager.o \
  680. X      pickup.o polyself.o potion.o pray.o pri.o priest.o prisym.o read.o \
  681. X      restore.o rip.o rnd.o rumors.o save.o search.o shk.o shknam.o sit.o \
  682. X***************
  683. X*** 121,132 ****
  684. X  #
  685. X  lev_comp.c:  lev_comp.y
  686. X      $(YACC) -d lev_comp.y
  687. X!     mv y,tab.c lev_comp.c
  688. X!     mv y,tab.h ..\include\lev_comp.h
  689. X  
  690. X  lev_lex.c:  lev_comp.l
  691. X      $(LEX) lev_comp.l
  692. X!     mv lex,yy.c lev_lex.c
  693. X  #
  694. X  #    The following include files depend on makedefs to be created.
  695. X  #
  696. X--- 121,134 ----
  697. X  #
  698. X  lev_comp.c:  lev_comp.y
  699. X      $(YACC) -d lev_comp.y
  700. X!     cp y,tab.c lev_comp.c
  701. X!     cp y,tab.h ..\include\lev_comp.h
  702. X!     rm y,tab.c y,tab.h
  703. X  
  704. X  lev_lex.c:  lev_comp.l
  705. X      $(LEX) lev_comp.l
  706. X!     cp lex,yy.c lev_lex.c
  707. X!     rm lex,yy.c
  708. X  #
  709. X  #    The following include files depend on makedefs to be created.
  710. X  #
  711. X***************
  712. X*** 177,185 ****
  713. X  # Secondary targets
  714. X  #
  715. X  
  716. X! auxil:    spec_levs
  717. X      cd $(AUX)
  718. X!     cp *. $(GAMEDIR)
  719. X  
  720. X  spec_levs: $(AUX)\castle.des $(AUX)\endgame.des $(AUX)\tower.des
  721. X      cd $(AUX)
  722. X--- 179,191 ----
  723. X  # Secondary targets
  724. X  #
  725. X  
  726. X! AUXMISC = cmdhelp help hh history license opthelp oracles
  727. X! 
  728. X! auxil:    data rumors spec_levs
  729. X      cd $(AUX)
  730. X!     cp data rumors $(GAMEDIR)
  731. X!     rm data rumors
  732. X!     cp $(AUXMISC) $(GAMEDIR)
  733. X  
  734. X  spec_levs: $(AUX)\castle.des $(AUX)\endgame.des $(AUX)\tower.des
  735. X      cd $(AUX)
  736. X***************
  737. X*** 186,197 ****
  738. X      ..\src\lev_comp castle.des
  739. X      ..\src\lev_comp endgame.des
  740. X      ..\src\lev_comp tower.des
  741. X!     cp castle $(GAMEDIR)
  742. X!     rm castle
  743. X!     cp endgame $(GAMEDIR)
  744. X!     rm endgame
  745. X!     cp tower? $(GAMEDIR)
  746. X!     rm tower?
  747. X  
  748. X  clean:
  749. X      rm *.o
  750. X--- 192,201 ----
  751. X      ..\src\lev_comp castle.des
  752. X      ..\src\lev_comp endgame.des
  753. X      ..\src\lev_comp tower.des
  754. X!     cp castle endgame $(GAMEDIR)
  755. X!     rm castle endgame
  756. X!     cp tower1 tower2 tower3 $(GAMEDIR)
  757. X!     rm tower1 tower2 tower3
  758. X  
  759. X  clean:
  760. X      rm *.o
  761. X***************
  762. X*** 253,264 ****
  763. X  mon.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\artifact.h
  764. X  mondata.o:  $(HACK_H) $(INCL)\eshk.h $(INCL)\epri.h
  765. X  monmove.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\artifact.h
  766. X  # kludge for "monst.c: Virtual memory exhausted" errors
  767. X! #monst.o:  $(CONFIG_H) $(PERMONST_H) $(INCL)\eshk.h $(INCL)\vault.h $(INCL)\epri.h
  768. X! monst1.o:  $(CONFIG_H) $(PERMONST_H) $(INCL)\eshk.h $(INCL)\vault.h $(INCL)\epri.h monst.c
  769. X!     $(CC) $(CFLAGS) -c -o monst1.o -DSPLITMON_1 monst.c
  770. X! monst2.o:  $(CONFIG_H) $(PERMONST_H) $(INCL)\eshk.h $(INCL)\vault.h $(INCL)\epri.h monst.c
  771. X!     $(CC) $(CFLAGS) -c -o monst2.o -DSPLITMON_2 monst.c
  772. X  msdos.o:  $(HACK_H)
  773. X  mthrowu.o:  $(HACK_H)
  774. X  music.o:  $(HACK_H)
  775. X--- 257,277 ----
  776. X  mon.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\artifact.h
  777. X  mondata.o:  $(HACK_H) $(INCL)\eshk.h $(INCL)\epri.h
  778. X  monmove.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\artifact.h
  779. X+ 
  780. X  # kludge for "monst.c: Virtual memory exhausted" errors
  781. X! # we build monst.s in two pieces, then glue them together with
  782. X! # "sed". if you don't have memory problems, uncomment out
  783. X! # all but the next line. if you don't have sed, get it from
  784. X! # a comp.binaries.atari.st site, or get gnu sed (the port to
  785. X! # the atari GCC is easy).
  786. X! 
  787. X! monst.o:  $(CONFIG_H) $(PERMONST_H) $(INCL)\eshk.h $(INCL)\vault.h $(INCL)\epri.h
  788. X!     $(CC) $(CFLAGS) -S -o monst1.s -DSPLITMON_1 monst.c
  789. X!     $(CC) $(CFLAGS) -S -o monst2.s -DSPLITMON_2 monst.c
  790. X!     sed -e s/LC/LD/ -e s/gcc_compiled.:// monst2.s >>monst1.s
  791. X!     $(CC) $(CFLAGS) -c monst1.s -o monst.o
  792. X!     rm monst1.s monst2.s
  793. X! 
  794. X  msdos.o:  $(HACK_H)
  795. X  mthrowu.o:  $(HACK_H)
  796. X  music.o:  $(HACK_H)
  797. X***************
  798. X*** 272,278 ****
  799. X  polyself.o:  $(HACK_H)
  800. X  potion.o:  $(HACK_H)
  801. X  pray.o:  $(HACK_H)
  802. X! pri.o:  $(HACK_H)
  803. X  priest.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\eshk.h $(INCL)\epri.h
  804. X  prisym.o:  $(HACK_H) $(INCL)\lev.h $(INCL)\wseg.h
  805. X  random.o:
  806. X--- 285,291 ----
  807. X  polyself.o:  $(HACK_H)
  808. X  potion.o:  $(HACK_H)
  809. X  pray.o:  $(HACK_H)
  810. X! pri.o:  $(HACK_H) $(INCL)\termcap.h
  811. X  priest.o:  $(HACK_H) $(INCL)\mfndpos.h $(INCL)\eshk.h $(INCL)\epri.h
  812. X  prisym.o:  $(HACK_H) $(INCL)\lev.h $(INCL)\wseg.h
  813. X  random.o:
  814. X***************
  815. X*** 290,296 ****
  816. X  sp_lev.o:  $(HACK_H) $(INCL)\sp_lev.h
  817. X  spell.o:  $(HACK_H)
  818. X  steal.o:  $(HACK_H)
  819. X! termcap.o:  $(HACK_H)
  820. X  timeout.o:  $(HACK_H)
  821. X  topl.o:  $(HACK_H)
  822. X  topten.o:  $(HACK_H)
  823. X--- 303,309 ----
  824. X  sp_lev.o:  $(HACK_H) $(INCL)\sp_lev.h
  825. X  spell.o:  $(HACK_H)
  826. X  steal.o:  $(HACK_H)
  827. X! termcap.o:  $(HACK_H) $(INCL)\termcap.h
  828. X  timeout.o:  $(HACK_H)
  829. X  topl.o:  $(HACK_H)
  830. X  topten.o:  $(HACK_H)
  831. X*** others/Old/Maketcc.ini    Sun Nov 19 14:13:25 1989
  832. X--- others/Maketcc.ini    Fri Nov 17 19:31:03 1989
  833. X***************
  834. X*** 77,85 ****
  835. X  #    pas2
  836. X  
  837. X  #    Y -> C, for YACC
  838. X! #.y.c:
  839. X! #    $(YACC) $(YFLAGS) $<
  840. X! #    rename ytab.c $@
  841. X  
  842. X  #    L -> C, for LEX
  843. X  #.l.c:
  844. X--- 77,88 ----
  845. X  #    pas2
  846. X  
  847. X  #    Y -> C, for YACC
  848. X! .y.c:
  849. X!     $(YACC) $(YFLAGS) $<
  850. X!     del $@
  851. X!     rename y.tbc $@
  852. X!     del $*.h
  853. X!     rename y.tbh $*.h
  854. X  
  855. X  #    L -> C, for LEX
  856. X  #.l.c:
  857. X*** others/Old/NetHack.cnf    Sun Nov 19 14:13:38 1989
  858. X--- others/NetHack.cnf    Wed Oct 25 20:52:03 1989
  859. X***************
  860. X*** 60,78 ****
  861. X  # stone, vertical wall, horizontal wall, top left corner, top right corner, 
  862. X  # bottom left corner, bottom right corner, crosswall, up T wall, down T wall, 
  863. X  # left T wall, right T wall, vertical beam, horizontal beam, left slant, right
  864. X! # slant, door, floor, corridor, up stairs, down stairs, trap, web, pool,
  865. X  # fountain, sink, throne, altar, up ladder, down ladder, vertical drawbridge
  866. X  # wall, horizontal drawbridge wall 
  867. X  #
  868. X! # If you specify less that 32 ASCII values, the remaining characters will be
  869. X  # set to their respective defaults.
  870. X  #
  871. X  #
  872. X  # An example using the IBM graphics character set:
  873. X! #       ' '  |   -   .   .   `   '   -   -   -   -   -   |   -   \   /   +   .   #   <   >   ^   "   }   {   #   \   _   <   >   #   #
  874. X! GRAPHICS = 032 179 196 218 191 192 217 197 193 194 180 195 179 196 092 047 239 249 177 060 062 094 157 247 244 035 190 220 060 062 186 205
  875. X  # An alternative:
  876. X! #GRAPHICS= 032 186 205 201 187 200 188 206 202 203 185 204 179 196 092 047 239 249 177 060 062 094 034 247 244 035 092 095 060 062 179 196
  877. X  #
  878. X  #
  879. X  # Using the DEC Rainbow/ANSI line-drawing character set:
  880. X--- 60,79 ----
  881. X  # stone, vertical wall, horizontal wall, top left corner, top right corner, 
  882. X  # bottom left corner, bottom right corner, crosswall, up T wall, down T wall, 
  883. X  # left T wall, right T wall, vertical beam, horizontal beam, left slant, right
  884. X! # slant, no door, vertical open door, horizontal open door, closed door,
  885. X! # floor, corridor, up stairs, down stairs, trap, web, pool,
  886. X  # fountain, sink, throne, altar, up ladder, down ladder, vertical drawbridge
  887. X  # wall, horizontal drawbridge wall 
  888. X  #
  889. X! # If you specify less that 35 ASCII values, the remaining characters will be
  890. X  # set to their respective defaults.
  891. X  #
  892. X  #
  893. X  # An example using the IBM graphics character set:
  894. X! #       ' '  |   -   .   .   `   '   -   -   -   -   -   |   -   \   /   .   -   |   +   .   #   <   >   ^   "   }   {   #   \   _   <   >   #   #
  895. X! GRAPHICS = 032 179 196 218 191 192 217 197 193 194 180 195 179 196 092 047 249 239 239 254 249 177 060 062 094 157 247 244 035 190 220 060 062 186 205
  896. X  # An alternative:
  897. X! #GRAPHICS= 032 186 205 201 187 200 188 206 202 203 185 204 179 196 092 047 249 239 239 254 249 177 060 062 094 034 247 244 035 092 095 060 062 179 196
  898. X  #
  899. X  #
  900. X  # Using the DEC Rainbow/ANSI line-drawing character set:
  901. X***************
  902. X*** 83,86 ****
  903. X  # can use characters from both sets this way.  These are also the characters
  904. X  # to use for the ANSI ruling character set '0'.
  905. X  #
  906. X! #GRAPHICS= 032 248 241 236 235 237 234 238 246 247 245 244 248 241 092 047 043 254 225
  907. X--- 84,87 ----
  908. X  # can use characters from both sets this way.  These are also the characters
  909. X  # to use for the ANSI ruling character set '0'.
  910. X  #
  911. X! #GRAPHICS= 032 248 241 236 235 237 234 238 246 247 245 244 248 241 092 047 254 241 248 043 254 225
  912. X*** /dev/null    Sun Nov 19 14:13:49 1989
  913. X--- others/atari.cnf    Mon Oct 30 12:10:17 1989
  914. X***************
  915. X*** 0 ****
  916. X--- 1,79 ----
  917. X+ # A '#' at the beginning of a line means the rest of the line is a comment.
  918. X+ #
  919. X+ # This configuration file is set up for two cases, for a hard disk
  920. X+ # (as drive C:), and for two floppy disks.
  921. X+ #
  922. X+ # To change the configuration, comment out the unwanted lines, and
  923. X+ # uncomment the configuration you want.
  924. X+ 
  925. X+ 
  926. X+ # *** OPTIONS ***
  927. X+ #
  928. X+ # If you want people to play NetHack over the modem, you should probably
  929. X+ # uncomment the following line:
  930. X+ #
  931. X+ #OPTIONS=!IBM_BIOS,number_pad,nocolor
  932. X+ #
  933. X+ # Some options to set personal preferences.  Uncomment and change these to
  934. X+ # suit your personal preference.  If several people are to use the same
  935. X+ # configuration, options like these should not be set.
  936. X+ #
  937. X+ #OPTIONS=name:Janet-V,female,dogname:Fido,catname:Morris,fruit:apricot
  938. X+ #OPTIONS=packorder:")[%?+/=!(*0_`,endgame:10 top/2 around/own
  939. X+ #
  940. X+ #
  941. X+ # Other general options.  You might also set "silent" so as not to attract
  942. X+ # the boss's attention.
  943. X+ #
  944. X+ OPTIONS=time,rest_on_space,nopickup
  945. X+ 
  946. X+ # Color: if you have a color monitor and want colored objects to appear,
  947. X+ # comment out the following line.
  948. X+ OPTIONS=nocolor
  949. X+ 
  950. X+ # *** HARD DISK CONFIGURATION ***
  951. X+ #
  952. X+ HACKDIR=c:\games\nethack
  953. X+ #
  954. X+ #   LEVELS and SAVE default to HACKDIR
  955. X+ #
  956. X+ LEVELS=c:\games\nethack
  957. X+ SAVE=c:\games\nethack;n
  958. X+ #
  959. X+ #   appending a ";n" to SAVE means don't prompt to insert a disk.
  960. X+ #SAVE=;n
  961. X+ #
  962. X+ # Using a ramdisk speeds things up; a 200K ramdisk is OK even on a 1 megabyte
  963. X+ # system.
  964. X+ RAMDISK=m:
  965. X+ 
  966. X+ 
  967. X+ # *** 2-FLOPPY CONFIGURATION ***
  968. X+ #
  969. X+ #HACKDIR=a:
  970. X+ #LEVELS=b:
  971. X+ #SAVE=b:
  972. X+ #RAMDISK=m:
  973. X+ 
  974. X+ 
  975. X+ # *** CHARACTER GRAPHICS ***
  976. X+ #
  977. X+ # The 35 GRAPHICS characters (0-34) are:
  978. X+ # stone, vertical wall, horizontal wall, top left corner, top right corner, 
  979. X+ # bottom left corner, bottom right corner, crosswall, up T wall, down T wall, 
  980. X+ # left T wall, right T wall, vertical beam, horizontal beam, left slant, right
  981. X+ # slant, no door, vertical open door, horizontal open door, floor, corridor,
  982. X+ # up stairs, down stairs, trap, web, pool, fountain, sink, throne, altar,
  983. X+ # up ladder, down ladder, vertical drawbridge wall, horizontal drawbridge wall 
  984. X+ #
  985. X+ # If you specify less than 35 ASCII values, the remaining characters will be
  986. X+ # set to their respective defaults.
  987. X+ #
  988. X+ #
  989. X+ # An example using the Atari's graphics character set:
  990. X+ #       ' '  |   -   .   .   `   '   -   -   -   -   -   |   -   \   /   .   -   |   +   .   #   <   >   ^   "   }   {   #   \   _   <   >   #   #
  991. X+ #GRAPHICS=042 124 045 169 170 045 045 043 045 045 045 045 124 045 092 047 249 251 251 252 250 240 174 175 222 223 247 221 189 196 227 243 242 178 179
  992. X+ #
  993. X+ # Using the font constructed by hackfnt.prg
  994. X+ #       ' '  |   -   .   .   `   '   -   -   -   -   -   |   -   \   /   .   -   |   +   .   #   <   >   ^   "   }   {   #   \   _   <   >   #   #
  995. X+ #GRAPHICS=032 190 191 194 195 192 193 189 197 196 199 198 190 191 092 047 202 201 201 200 202 203 210 211 207 206 214 204 205 208 209 212 213 215 215
  996. X*** /dev/null    Sun Nov 19 14:13:59 1989
  997. X--- others/atarifnt.uue    Mon Oct 30 12:10:18 1989
  998. X***************
  999. X*** 0 ****
  1000. X--- 1,116 ----
  1001. X+ table
  1002. X+  !"#$%&'()*+,-./0123456789:;<=>?
  1003. X+ @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
  1004. X+ begin 644 atarifnt.arc
  1005. X+ M&@A(04-+1DY4+D1/0P  & $  %T3-Z930'4!   ,5-"4 0%'SILS<L*T 2$"z
  1006. X+ M39@Q:\RXH2,"Q!B';LZ4F0-BSILV ]^8 4%'H$6'"<?0*2.'8QHW)$W6@0.'y
  1007. X+ M)<$P<N@T4" RYL @='"F.<%Q3IXY*Q>:>3.QXQL083C2>5KPC9TT9 :R>3D0x
  1008. X+ M81@X:-*,X1CFG("W66;E3+-,Y+D D&9GG31T0<NK +)F&8U6O;5A -0O"w
  1009. X+ MH9V!;=Z026,F39FS(MR4*?EPC8LQ;LR(V/FU:L$T85:RR2.XY,:!%W$^7-D2v
  1010. X+ MQ)TT;-A I5D&)XB72&N?[6D:A)LW<MJ$D>T5K%BX.QM6EDC1-? U+F&626-:u
  1011. X+ M#HC$OR\:3 O<XALVP 67/2L\#P@Q _/"-+-]9^\P:Y\N99-5CHN=&@A(04-+t
  1012. X+ M1DY4+E!21P  YQ$  %T3#86'&U$;   ,8#0  "   *0!& @8'$!A8  ,!A6Hs
  1013. X+ M> . P(AF S40$-$& (9I[0!P&)$L(P(2'5DHD7 &@0AE2C28X0>&GI!,)O*8r
  1014. X+ M5#+IC P46QAP !#$##VA *28<8?TB!ET2*V8$8>TAQEN0D:16()%$8@D)A)8q
  1015. X+ M4I1E$+E!8)A\C<9O(2 A6$0D(('$3@ 0;0D",,''[;5F$"9, =#&@)1%2B:8p
  1016. X+ M<2 KT1D#0C* ""9ED!!,8"@PF   A!D%E2='E@L&FX1I8*B90'*IF9)<&1E\o
  1017. X+ M'I$7Q$(-#*[EBRUB@;1& @+].^C/19 7"UXT$'+F!P\ 2IP$^=;V((,7.4R^n
  1018. X+ M4/!B0"=G3F #",#B!X#P#A$,=&+E'S\DYV" @.$"@ ([3,S_&" =RY,60+C'm
  1019. X+ MA#L$,/ //$YXX40=[+D'GWSHC6>&;3  @)]^_ 7A'X "$F@@@@HR:,5 H  Pl
  1020. X+ M C 949#@@@V^=PX.(#BARS_FV"&-->)I0 $(0S  !0 0F"&!'>K@F"*/(/ Rk
  1021. X+ MD  $@,&"C48"H".//@* @)!$1CGE$$D.)$&3"B"!!T$R_L.$?R#H).5&:FH$j
  1022. X+ M @H , !-*@#LV"8!T* BD@& .&1A#$(0\0,!+P"PGW10_!<@/P,2P,$_[*Q8i
  1023. X+ MAT$B1* 0) 1 A(-!.0!AD L\&&!0"6#(((-!!/#PG*H+\7#00O\,!(%!!:@'h
  1024. X+ M"0@008)! :#TQ8>OD!2 Z@)P8@I17Y#<,"L8!FG@  ;@H&H 1& ,1:U'8)AAg
  1025. X+ M!@, ^$ M!LQJ"X #"QF J:FT@L'L0:8&L! ,>NAAA@&SLLKJ0:X20 ( JPP4f
  1026. X+ MR4+XB&2#01+T!8 'Y$*" $0 X+!IL/Z\RP ?_KCCKI5XX,"K+@+HH(,@N."Be
  1027. X+ MRZMC M  -AYIZX,9;&!@0+;2\H !#WXPX <'?MQ;  \X8, '#WCXX<?*?AC d
  1028. X+ M#!C&F,'#S_CXX(>V29OAAP=@X#$K'  P*RJY8&#  # //XM!A0#PL*W9, R,c
  1029. X+ MMM(P* U1SF; P$/;!V'@@1D8.,  IO$.Q# (MAT4;P\#^8$!$TQLRX<>]CZ'b
  1030. X+ M+Z;[5E/0OP>! X(//@3@!PY^'.3&4'5''/%!$/#L@P<0^& P& 8\.Q ;!L, a
  1031. X+ M QX1SXP#!SCX8TP SSD !!"\&F/N ,8  XPQKWH*@ %P8J#MTRTST':N QA@z
  1032. X+ MN- VT_SJN " X\?/0O/1^0!2&XVTU ?Q(S34SU.=<<-9+W]PUEZ#;= !N4X[y
  1033. X+ M=N%X:XO!4/[SWT'\  !\!-!Y?L.!TCR  4PASF\# 1S#$$=  (PN4Q!01N-:x
  1034. X+ M!3E^%82 SP%'#,9@@P%L;FA^<,/ \$7 B!$$ GY@ P@@ ,/:P<$!&<  !@1 w
  1035. X+ M!(/A 0D,XP$)6$ #7?C#&N3#P /@ #Q0".\@Q3O>J[ &@ - (V7_  ,;>H8[v
  1036. X+ MF97+# H4"AC@8 #__<\/<#"#.9YF!C> X2!X,P VP. .,V#J:,XS0]08 "X,u
  1037. X+ M;&HH6O-(_   C%SASR#Z(YL9#-( 51$099 P@-GFYC]$WFL (QA!K@A@!G=At
  1038. X+ MPU4#D)4&5^6X >0K<B< @.&> XL,^, &*W.9#;1U*C.(P98" (,'5,D'/<+@s
  1039. X+ M5^ PAN%NMP$=^@!V P&B(DE@CC-(@A^2&, P>)" WS4 %D\DGO&0-P ^*,\%r
  1040. X+ MLW)>%AG0,WQ13S9AY("ZRH@W/V[.#,*P8Y/@Z+(YNL,.=AP 'J%F-C["  -Lq
  1041. X+ MB-/2>. #F:D.!PQ@!D!5Q0?5.8U]4M,A#,201U<E  <#] ,8[/!). Y0:FW#p
  1042. X+ M&\\F:0:G,<P$)FB5V7K@!VR,3Y3_X,$_?L"/ X#C'S-5WSDPL(HZ\, *,P, o
  1043. X+ M)AH RU[*T@QVP  $[F$/,X#!#S!0(#^,(01C8, :UCB>X7!73 #PP6$ ^  2n
  1044. X+ M_CF089!@$,&P!C]T88!(\  !0,#!-071,1WH(F2"T(4N_%"R'$0KCWS  !P:m
  1045. X+ M.(!_$)" LO':S/@ !@;03(=8XP #M"&U;/W*#88S #S X ]\'H09@^6GS,8&l
  1046. X+ MT(HX37S!0B@W,."/SAT HIOSHSS )34?8 JU \ H^9SZ!V^,SXX&@,'3,. #k
  1047. X+ MSDEM7G@;" M8@ $-P,)IF/V'-_()4YG2] 'PP"E-_7 .$E2C"C[0 @YXX \&j
  1048. X+ M', &-@A&9FU@AX)"(!/<<"H_ &I'  BBJCR0A"2.ITH'#!8#?O 4Z9  !B0,i
  1049. X+ M)!#G0*LQ\(&#MKYU(!W Q4#X$"RO\D%4!]E4RDHJ6,(:5I4><8-B:<8'QWH+h
  1050. X+ M6N-B@#7,P%@6\P&S+MNL-9Z6OIYIRQHS:R !C#&0,F;KN'AC #Y8:\<"=.W&g
  1051. X+ M_82'W7S!@Q^;JTGY)*RV^+"!Z2H,#'(3W[3RV=[D>N0@-L!&&=U@AFU8.91 f
  1052. X+ M4D9,<_H!?&B7'[$BP2JH8(Z8DI< !WCE(-9K!P> ,1.(8"PJ&) T& C"#TG3e
  1053. X+ M[U2%ACL=^J$@!X&&F,AVCD TTQKZT 4C.@$T#W @!YR@*RYT<!".Z4('K3L d
  1054. X+ M/!8"D7\$UQL>R3&KD^HU-EC/>:(" !QN=M6G94M=_I,C&&9\7'QP((\X)BT4c
  1055. X+ M![*R'^?1:TI>,:;&B&RS84#)'N $"7YL6RC7+:-\V(,!K^P/YQ'7>1F-VT!@b
  1056. X+ M( . LF%E=G##-ESZM(7H8<UMINF;8X6!:E# 'O]0&AN \0U8FM0 -C! &7'Pa
  1057. X+ M#D0X%06$CMM]V2 $10O3C\>&B \6<L5@D6 81)2$/"3!B$#P !\0D$ >/"$\z
  1058. X+ M8 Q/>,+S P0>$+"Z <#5-H"U#KUXD.G5NHRX'@CG>L8-7SO5V<(V!IE[B8UGy
  1059. X+ M:<L?,OLG'Q=B=,/Y3\A7E2<89/9T<_=L4TY%GY''1UBA@>$?XTZ </%F]8_&x
  1060. X+ M36ADQ@ V;/ T._CA&_1>Y$$4L&;LZCNGW.47!WR@E!@:#[WBDZ7"><"&JSP<w
  1061. X+ M X6^+PHJOE\>"_99!S$8!G[D<3!R0!?VL 8VAH%&#G @#HYH^<L-(+QM?8 =v
  1062. X+ MM#HN,V+=3H],KVU%B]N\=#B4P0)#Z\XVP]&4'G9F;)F\,NO:U.$8]B,'&1M9u
  1063. X+ MG[;3D1\WB0) "-K*UK2-Q?S28,.."("JN?OGN7P*;1K.<#>7L?']5^U]S3;]t
  1064. X+ M^W;/ 8!J8, >>AC&/]@ #WB\,AAQY ,*5UI-!08H  .%EC2J8 98I57@,BW0s
  1065. X+ MISP\@#4>-S?D9 [&@ 5F$"L00 &HIWI0Q'IE)  )$7N]-'NXLT@005MC V1Mr
  1066. X+ M(S;D$BWBD$]N%'S#EWUJ8'S.PP-UU$?3LA#9YU0 %F0*E333=GSN0#/_M#_#q
  1067. X+ M$(3;ERG=QWY%QD9SXS/CARGKPSH&H $8$&;R)(7N-P *<$F@5#8'L2^KX <Up
  1068. X+ MHG_\!P\V\ >#$( *QP0\)@:,A0):] <@(#[N\#U\$$P$5#>0E"J!LS,,PP?No
  1069. X+ MX YPP .SDG)A8 @<,VH=8VHZP&N7@A 0%#'2 T'@TCD%(C3"-5JL]C3AHU&Dn
  1070. X+ MB&B(5EE\<'&&DS0 Y@$&,"81TSD%0%Q*PP#.P -),SY/Y0&M6%*&LS^&!0D+m
  1071. X+ M $K/(UVTZ#2&\P< !6 TPT8%I5$&P #MYER>^ _^\#P+,8:E5(:@%#D$Y0<Xl
  1072. X+ M!0#\P \V, 8'MSP&P 8\!@!LP"S^@ -= "2,QX@PQ&-DAPFHDBL-4"$/,P!!k
  1073. X+ M( B^,I 6]AP0<(D, Q%VL#S,(DC@\HP\X%ASPS,ZQ&IF\S-!LW52HXNIV&0Vj
  1074. X+ M8 R!)3."P':P*(O=TE!U4T81:0RZJ#0-!09\X #>,I*WMC]E8UMCR'Q^T%N@i
  1075. X+ MA#F2)#/_ "YP4% $)2YEPSH8\ ,,4U"\P M_0(7;2(:O\HW\,C/3\&'EB#F)h
  1076. X+ M)RH*]X]@L&H1@R*S<A#PD#KX6#<4* &V,981X &.XP 5 @EP:1 K4$'(8F08g
  1077. X+ M=@ $]"S1$B>(Q"V0 $.T @3K8CV!.  ?0(*H @A] @D)()6A1)75\!S_LD@Xf
  1078. X+ M90,<@"*0H  "1@!]@BP#$"V0<$B0< (70 4&X0"!HYITZ4/IDI?(8@ /(YL&e
  1079. X+ M 0'(0@*063:E%"N88IFQ@@"-V0&YPD>C)5/GH#DZU'^\<F&_ I(5A@>J9BDId
  1080. X+ M(T@]XU^T(@ R0S/9DS//(3];)S,8*30K$RI.E30#!3ZPY0% 8#4+$4B I$-@c
  1081. X+ M$#;/0H'DPT?5ES+3DRU>8RC.\T]T@Q <8 8<X %[0P T0 .T8@P\M@'8<* %b
  1082. X+ M 0!_  ,'NBT P#BDQ$&AM"\*TQ:@@P#DLDA#84&M,A"2U2W/,3;<4I%@U3 Xa
  1083. X+ M4#)"A#N9\ _#($T\D)G $#PO9SRLQV-@0'/$DC+OQC+_HT#4LW#;HDZL8T;<z
  1084. X+ M$E)FPS)OE$3K2$>>58L0-2U=LRDH$D@5TI!=<S_Y0UA=<Z(J"!$J" #J)DAXy
  1085. X+ MH(+)53<Z8 8V\$^8@@58H"H,PPP*90-L(*<\4!#0)Z<>D4$;]#CZ @ J@)V]x
  1086. X+ M@ #/ 0\S@%XS<#,^T%HVL %+!0 V$#%FL$L>H2HVH%1I9#@'(38R@$SNR 8,w
  1087. X+ M8*DD8 ]O, S^D D&, T\8 '^\ TX"D4ZJJ! \WHGDS+^H$7E9$KG)&+3LC2-v
  1088. X+ M)4 FY#)DUGST%(N<16--DD<LN2VD%5!;]S,%U5!?96[L\#/6^E!Z]#R$-5MZu
  1089. X+ M9TH#L2K["& M%7N3)#<LADAEM!#LYXX#8Z8T@S)E P!1-4JZR4$$0']4< +Ft
  1090. X+ M(*!^X _<L %WX /,L"WL9 ,\DPGX9 ;^$%5L #=FD#$MIDK2TU5, %8/T#(:s
  1091. X+ M-@P)%@SGP \\P BN"@'8L W7-&$5]BLODQ#,(TAL(#-8HT,?1D 8D%0,P "Vr
  1092. X+ M%I(;9Z]QP@!JP&*6]6*9!0?#]C2]]#/(EF.8PF,PX&/:$E(ZU#+9&"S.]ZS2q
  1093. X+ MXS6>0 /9HBH_J9$\@R]-5F7&:+6!Q0=R,UXL5E)XHSKH)7<;H"IN(&_>H$.+p
  1094. X+ ME&;XA@_8]68$A ,J4 =V\ ]T9VL/\$H66T9V$*!L %]\( 8MPP8M<US<0 7$o
  1095. X+ MYJD#4$R!F"EL  /< @#G, QH-0SYD DG*W/>\ _7!(+$(X)"DQ!6!+.O%FL\n
  1096. X+ M-P ^9SUEU#;3\BHZA%G-AW1X@#1DME&VED=01UK+-P#-!E)FA ?1UR1<QX#Fm
  1097. X+ MABD,0 //8P "^#)DQWQ\\ ?CA@!8AC9;=A -*SL,L 8BQ@8)AU1V@'>J<K<0l
  1098. X+ M<&\RA5UMQK?N2 7=8 Y:H+#\]P.PU*@,4$;3J$?O@ Q.M;F0BV[Z1+DP@Z)Rk
  1099. X+ M!P"GXA'8 #LE0P)F@*J9, _#  ?#  &#Y0$9@ FJ"W- =Y#@M!#^<((B0:05j
  1100. X+ MPH)M(QNZQT=> U59DT_O&'SO:%$ \B#==\X/=YU0P$$O-:(1-<GS4"J>Ai
  1101. X+ M) 9F\U12DS-/6G8:!88%L#)LTY]M-P!N4%!8Q@##@&-X2F,# (9H!@'<B*%Fh
  1102. X+ M.  OH@(SXP=C0'_\  P^< <'^[]%XU@C&5\Y?,!F0P+L@ /6T*FL!GU,X#<4g
  1103. X+ M6 "XV47G< X@, PXH&0;L'+,&<D&\"L\X %NZ5<PBP%&L)#6Z;,8  00*9%If
  1104. X+ M:Z^BTC4K$YY@,)YFTY%@,$L&!7DD*0 FJ3H$-3<JN8/F^9(QZ2V-9SWSJ4H(e
  1105. X+ M4%#=AJB1]#QWUY,"2%  YC.IK"I4/!!QPP"&\ D8P* %-4!/66][EYM4204$d
  1106. X+ M% A/>7/F.# UPY4,0*]VP%AL$(_,.#,3^TLKHTIHN4EQ:8CN1P RUY"H9Q ,c
  1107. X+ M<)H/TP#KH@,&4\BL<S^:MQ"SF2NV"4'Q,YIE"  /X,,$\#O0K#11V8U3^1S[b
  1108. X+ M4J]G.!"Q CH'0)]@@ \&1DBETYYCZ<,+0 8ZP 5GX 9UP 5L &D%$ 9R< 9Qa
  1109. X+ M20"76!!H$ 9CL 9M1 <N &D#$  (< 9C, 9?, 9OT 9P0-1&_05?( 9A, =Ez
  1110. X+ MX"<'H1%2W09AD 9NL"0+01Y2709XD 9T -8'$=5,S09R\ 5D$ :7^"52/0=Ty
  1111. X+ M8--G3=-?T 9OX 9OX-9PO1!,\@5E0 =D?=9Z<1 %(=AN8 =I( =[[2Y9C0!Sx
  1112. X+ M30=K, =IH >0/0"X(=AR( =\C=6:#0&"7=9GC=AA+=E<[=6 '=9F\ 5>;=:Kw
  1113. X+ MG=96\ 5AP 9>?=7C<1L4(-AO7=<#<8E:709N0 :HDME<6"[/P@1 \+\DP  (v
  1114. X+ 20 ,HH%0(H  0@  2T#H  !H u
  1115. X+  t
  1116. X+ end
  1117. X*** others/Old/msdos.c    Sun Nov 19 14:14:13 1989
  1118. X--- others/msdos.c    Mon Nov 13 21:20:43 1989
  1119. X***************
  1120. X*** 1,4 ****
  1121. X! /*    SCCS Id: @(#)msdos.c    3.0    88/11/20
  1122. X  /* NetHack may be freely redistributed.  See license for details. */
  1123. X  /* An assortment of MSDOS functions.
  1124. X   */
  1125. X--- 1,4 ----
  1126. X! /*    SCCS Id: @(#)msdos.c    3.0    89/11/08
  1127. X  /* NetHack may be freely redistributed.  See license for details. */
  1128. X  /* An assortment of MSDOS functions.
  1129. X   */
  1130. X***************
  1131. X*** 8,13 ****
  1132. X--- 8,16 ----
  1133. X  #ifdef MSDOS
  1134. X  # ifdef TOS
  1135. X  #  include <osbind.h>
  1136. X+ #  ifndef WORD
  1137. X+ #    define WORD short        /* 16 bits -- redefine if necessary */
  1138. X+ #  endif
  1139. X  # else
  1140. X  #  ifdef __TURBOC__    /* avoid incompatible redeclaration */
  1141. X  #   undef getdate
  1142. X***************
  1143. X*** 15,21 ****
  1144. X  #  include <dos.h>
  1145. X  # endif
  1146. X  #ifdef OS2
  1147. X! # include "def_os2.h"    /* OS2 definitions (Timo Hakulinen) */
  1148. X  #endif
  1149. X  static char DOSgetch();
  1150. X  #ifdef DGK
  1151. X--- 18,24 ----
  1152. X  #  include <dos.h>
  1153. X  # endif
  1154. X  #ifdef OS2
  1155. X! # include "def_os2.h"   /* OS2 definitions (Timo Hakulinen) */
  1156. X  #endif
  1157. X  static char DOSgetch();
  1158. X  #ifdef DGK
  1159. X***************
  1160. X*** 23,28 ****
  1161. X--- 26,36 ----
  1162. X  #endif
  1163. X  static unsigned int ioctl();
  1164. X  
  1165. X+ #ifdef TOS
  1166. X+ static void init_aline();
  1167. X+ char *_a_line;            /* for Line A variables */
  1168. X+ #endif
  1169. X+ 
  1170. X  void
  1171. X  flushout()
  1172. X  {
  1173. X***************
  1174. X*** 498,504 ****
  1175. X  
  1176. X  void
  1177. X  eraseall(path, files)
  1178. X! char *path, *files;
  1179. X  {
  1180. X      char
  1181. X  #ifndef OS2
  1182. X--- 506,512 ----
  1183. X  
  1184. X  void
  1185. X  eraseall(path, files)
  1186. X! const char *path, *files;
  1187. X  {
  1188. X      char
  1189. X  #ifndef OS2
  1190. X***************
  1191. X*** 535,541 ****
  1192. X  #endif
  1193. X      *comspec;
  1194. X      int status;
  1195. X-     long fs;
  1196. X      extern saveprompt;
  1197. X  
  1198. X      if (!ramdisk)
  1199. X--- 543,548 ----
  1200. X***************
  1201. X*** 850,856 ****
  1202. X              int lth;
  1203. X  
  1204. X               if ((lth = sscanf(bufp,
  1205. X!      "%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d",
  1206. X                  &translate[0], &translate[1], &translate[2],
  1207. X                  &translate[3], &translate[4], &translate[5],
  1208. X                  &translate[6], &translate[7], &translate[8],
  1209. X--- 857,863 ----
  1210. X              int lth;
  1211. X  
  1212. X               if ((lth = sscanf(bufp,
  1213. X!     "%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d",
  1214. X                  &translate[0], &translate[1], &translate[2],
  1215. X                  &translate[3], &translate[4], &translate[5],
  1216. X                  &translate[6], &translate[7], &translate[8],
  1217. X***************
  1218. X*** 861,867 ****
  1219. X                  &translate[21], &translate[22], &translate[23],
  1220. X                  &translate[24], &translate[25], &translate[26],
  1221. X                  &translate[27], &translate[28], &translate[29],
  1222. X!                 &translate[30], &translate[31])) <= 0) {
  1223. X                      msmsg ("Syntax error in GRAPHICS\n");
  1224. X                      getreturn("to continue");
  1225. X              }
  1226. X--- 868,875 ----
  1227. X                  &translate[21], &translate[22], &translate[23],
  1228. X                  &translate[24], &translate[25], &translate[26],
  1229. X                  &translate[27], &translate[28], &translate[29],
  1230. X!                 &translate[30], &translate[31], &translate[32],
  1231. X!                 &translate[33], &translate[34])) <= 0) {
  1232. X                      msmsg ("Syntax error in GRAPHICS\n");
  1233. X                      getreturn("to continue");
  1234. X              }
  1235. X***************
  1236. X*** 926,932 ****
  1237. X  
  1238. X  void
  1239. X  getreturn(str)
  1240. X! char *str;
  1241. X  {
  1242. X  #ifdef TOS
  1243. X      msmsg("Hit <Return> %s.", str);
  1244. X--- 934,940 ----
  1245. X  
  1246. X  void
  1247. X  getreturn(str)
  1248. X! const char *str;
  1249. X  {
  1250. X  #ifdef TOS
  1251. X      msmsg("Hit <Return> %s.", str);
  1252. X***************
  1253. X*** 938,946 ****
  1254. X  }
  1255. X  
  1256. X  void
  1257. X! msmsg VA_DECL(char *, fmt)
  1258. X      VA_START(fmt);
  1259. X!     VA_INIT(fmt, char *);
  1260. X      Vprintf(fmt, VA_ARGS);
  1261. X      flushout();
  1262. X      VA_END();
  1263. X--- 946,954 ----
  1264. X  }
  1265. X  
  1266. X  void
  1267. X! msmsg VA_DECL(const char *, fmt)
  1268. X      VA_START(fmt);
  1269. X!     VA_INIT(fmt, const char *);
  1270. X      Vprintf(fmt, VA_ARGS);
  1271. X      flushout();
  1272. X      VA_END();
  1273. X***************
  1274. X*** 950,987 ****
  1275. X  /* Chdrive() changes the default drive.
  1276. X   */
  1277. X  #ifndef __TURBOC__
  1278. X! #ifndef OS2
  1279. X! #define SELECTDISK    0x0E
  1280. X! #endif
  1281. X  void
  1282. X  chdrive(str)
  1283. X  char *str;
  1284. X  {
  1285. X      char *ptr;
  1286. X! #ifndef TOS
  1287. X! #ifndef OS2
  1288. X      union REGS inregs;
  1289. X! #endif
  1290. X! #endif
  1291. X      char drive;
  1292. X  
  1293. X      if ((ptr = index(str, ':')) != NULL) {
  1294. X          drive = toupper(*(ptr - 1));
  1295. X! #ifdef TOS
  1296. X          Dsetdrv(drive - 'A');
  1297. X! #else
  1298. X! #ifdef OS2
  1299. X          DosSelectDisk((USHORT)(drive - 'A' + 1));
  1300. X! #else
  1301. X          inregs.h.ah = SELECTDISK;
  1302. X          inregs.h.dl = drive - 'A';
  1303. X          intdos(&inregs, &inregs);
  1304. X! #endif
  1305. X! #endif
  1306. X      }
  1307. X      return;
  1308. X  }
  1309. X  #else
  1310. X  void
  1311. X  chdrive(str)
  1312. X  char *str;
  1313. X--- 958,997 ----
  1314. X  /* Chdrive() changes the default drive.
  1315. X   */
  1316. X  #ifndef __TURBOC__
  1317. X! # ifndef OS2
  1318. X! #  define SELECTDISK      0x0E
  1319. X! # endif
  1320. X  void
  1321. X  chdrive(str)
  1322. X  char *str;
  1323. X  {
  1324. X      char *ptr;
  1325. X! # ifndef TOS
  1326. X! #  ifndef OS2
  1327. X      union REGS inregs;
  1328. X! #  endif
  1329. X! # endif
  1330. X      char drive;
  1331. X  
  1332. X      if ((ptr = index(str, ':')) != NULL) {
  1333. X          drive = toupper(*(ptr - 1));
  1334. X! # ifdef TOS
  1335. X          Dsetdrv(drive - 'A');
  1336. X! # else
  1337. X! #  ifdef OS2
  1338. X          DosSelectDisk((USHORT)(drive - 'A' + 1));
  1339. X! #  else
  1340. X          inregs.h.ah = SELECTDISK;
  1341. X          inregs.h.dl = drive - 'A';
  1342. X          intdos(&inregs, &inregs);
  1343. X! #  endif
  1344. X! # endif
  1345. X      }
  1346. X      return;
  1347. X  }
  1348. X  #else
  1349. X+ extern int setdisk(int);
  1350. X+ 
  1351. X  void
  1352. X  chdrive(str)
  1353. X  char *str;
  1354. X***************
  1355. X*** 1158,1165 ****
  1356. X--- 1168,1177 ----
  1357. X  #ifdef TOS
  1358. X      if (run_from_desktop)
  1359. X          getreturn("to continue"); /* so the user can read the score list */
  1360. X+ # ifdef TEXTCOLOR
  1361. X      if (flags.IBMBIOS && flags.use_color)
  1362. X          restore_colors();
  1363. X+ # endif
  1364. X  #endif
  1365. X      exit(code);
  1366. X      return;
  1367. X***************
  1368. X*** 1213,1218 ****
  1369. X--- 1225,1234 ----
  1370. X  
  1371. X      LI = regs.h.dl + 1;
  1372. X      CO = regs.h.ah;
  1373. X+ #   else  /* TOS */
  1374. X+     init_aline();
  1375. X+     LI = (*((WORD  *)(_a_line + -42L))) + 1;
  1376. X+     CO = (*((WORD  *)(_a_line + -44L))) + 1;
  1377. X  #   endif /* TOS */
  1378. X  #  endif
  1379. X  }
  1380. X***************
  1381. X*** 1248,1262 ****
  1382. X      return Cconis();
  1383. X  }
  1384. X  
  1385. X  static unsigned orig_color[4] = {-1, -1, -1, -1};
  1386. X  static unsigned new_color[4] = { 0x0, 0x730, 0x047, 0x555 };
  1387. X  
  1388. X  void set_colors()
  1389. X  {
  1390. X      int i;
  1391. X  
  1392. X!     for (i = 0; i < 4; i++)
  1393. X!         orig_color[i] = Setcolor(i, new_color[i]);
  1394. X  }
  1395. X  
  1396. X  void restore_colors()
  1397. X--- 1264,1308 ----
  1398. X      return Cconis();
  1399. X  }
  1400. X  
  1401. X+ static void
  1402. X+ init_aline()
  1403. X+ {
  1404. X+ #ifdef __GNUC__
  1405. X+     asm(" .word 0xa000; movel d0, __a_line");
  1406. X+ #else
  1407. X+     asm(" .dc.w 0xa000");    /* tweak as necessary for your compiler */
  1408. X+     asm(" move.l d0, __a_line");
  1409. X+ #endif
  1410. X+ }
  1411. X+ 
  1412. X+ #ifdef TEXTCOLOR
  1413. X  static unsigned orig_color[4] = {-1, -1, -1, -1};
  1414. X  static unsigned new_color[4] = { 0x0, 0x730, 0x047, 0x555 };
  1415. X+ static int numcolors = 2;
  1416. X  
  1417. X  void set_colors()
  1418. X  {
  1419. X      int i;
  1420. X  
  1421. X!     init_aline();
  1422. X!     numcolors = 1 << (((unsigned char *) _a_line)[1]);
  1423. X!     if (numcolors == 2) {            /* mono */
  1424. X!         flags.use_color = FALSE;
  1425. X!         return;
  1426. X!     }
  1427. X!     else if (numcolors == 4) {
  1428. X!         for (i = 0; i < 4; i++)
  1429. X!             orig_color[i] = Setcolor(i, new_color[i]);
  1430. X!     }
  1431. X!     else {
  1432. X!         orig_color[0] = Setcolor(0, new_color[0]);
  1433. X!         orig_color[1] = Setcolor(15, 0x777);
  1434. X!         for (i = 0; i < 16; i++) {
  1435. X!             hilites[i] = (char *) alloc(sizeof("\033b0"));
  1436. X!             sprintf(hilites[i], "\033b%c", '0'+i);
  1437. X!         }
  1438. X!         HE = "\033q\033b\017\033c0";
  1439. X!     }
  1440. X  }
  1441. X  
  1442. X  void restore_colors()
  1443. X***************
  1444. X*** 1263,1269 ****
  1445. X  {
  1446. X      int i;
  1447. X  
  1448. X!     for (i = 0; i < 4; i++)
  1449. X!         (void) Setcolor(i, orig_color[i]);
  1450. X  }
  1451. X  #endif /* TOS */
  1452. X--- 1309,1323 ----
  1453. X  {
  1454. X      int i;
  1455. X  
  1456. X!     if (numcolors == 2)
  1457. X!         return;
  1458. X!     else if (numcolors == 4)
  1459. X!         for (i = 0; i < 4; i++)
  1460. X!             (void) Setcolor(i, orig_color[i]);
  1461. X!     else {
  1462. X!         (void) Setcolor(0, orig_color[0]);
  1463. X!         (void) Setcolor(15, orig_color[1]);
  1464. X!     }
  1465. X  }
  1466. X+ #endif /* TEXTCOLOR */
  1467. X  #endif /* TOS */
  1468. X*** others/Old/oldtos.c    Sun Nov 19 14:15:00 1989
  1469. X--- others/oldtos.c    Fri Oct 20 13:30:41 1989
  1470. X***************
  1471. X*** 442,448 ****
  1472. X              int lth;
  1473. X  
  1474. X               if ((lth = sscanf(bufp,
  1475. X!          "%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d",
  1476. X                  &translate[0], &translate[1], &translate[2],
  1477. X                  &translate[3], &translate[4], &translate[5],
  1478. X                  &translate[6], &translate[7], &translate[8],
  1479. X--- 442,448 ----
  1480. X              int lth;
  1481. X  
  1482. X               if ((lth = sscanf(bufp,
  1483. X!     "%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d",
  1484. X                  &translate[0], &translate[1], &translate[2],
  1485. X                  &translate[3], &translate[4], &translate[5],
  1486. X                  &translate[6], &translate[7], &translate[8],
  1487. X***************
  1488. X*** 453,459 ****
  1489. X                  &translate[21], &translate[22], &translate[23],
  1490. X                  &translate[24], &translate[25], &translate[26],
  1491. X                  &translate[27], &translate[28], &translate[29],
  1492. X!                 &translate[30], &translate[31])) < 0) {
  1493. X                      cprintf("Syntax error in GRAPHICS\n");
  1494. X                      getreturn("to continue");
  1495. X              }
  1496. X--- 453,460 ----
  1497. X                  &translate[21], &translate[22], &translate[23],
  1498. X                  &translate[24], &translate[25], &translate[26],
  1499. X                  &translate[27], &translate[28], &translate[29],
  1500. X!                 &translate[30], &translate[31], &translate[32],
  1501. X!                 &translate[33], &translate[34])) < 0) {
  1502. X                      cprintf("Syntax error in GRAPHICS\n");
  1503. X                      getreturn("to continue");
  1504. X              }
  1505. X*** /dev/null    Sun Nov 19 14:15:59 1989
  1506. X--- others/ovlmgr.uu    Sat Nov 18 17:06:13 1989
  1507. X***************
  1508. X*** 0 ****
  1509. X--- 1,90 ----
  1510. X+ begin 644 ovlmgr.obj
  1511. X+ M@`P`"F]V;&UG<BYA<VUDEA4```904U!314<&3U9,5$),!$-/1$6%F`H`````
  1512. X+ M`"P``@$!+I@*```````0``,!`4F8!P!HZ`X$`0']C$8`!R0D24Y43D\`"20D
  1513. X+ M3U9,0D%310`*)"1-4$=33D]63``+)"1-4$=33D)!4T4`!B0D34%)3@`&)"1#
  1514. X+ M1U-.``8D)$-/5DP`T9`0```#"20D3U9,24Y)5/`&`/&(!```H@'1H!0``@``
  1515. X+ M`````````````````````$J@*P`#``#__P````````````#__P``````````
  1516. X+ M____________```````````_G`@`Q`8``P-#`$FB9@`#)P`!`````DU:`0``
  1517. X+ M``(```$````"```!`````@```0````(```$````"```!`````@```0````(`
  1518. X+ M``$````"```!`````@```0````(```$````"```!`````@```0````(``/VB
  1519. X+ M#P`#0P```0$``0````(```2B#P`#0P(``@$``0````(```&@``0#0P8-"DYO
  1520. X+ M="!E;F]U9V@@;65M;W)Y('1O(')U;B!T:&ES('!R;V=R86TN(%1I;64@=&\@
  1521. X+ M9V\@=&\@=&AE('-T;W)E+@T*!R0-"EEO=7(@9&]G(&5A=',@86QL('EO=7(@
  1522. X+ M<F5M86EN:6YG(&UE;6]R>2$@66]U(&1I92X-"@<D#0I4:&4@3GEM<&@@<W1O
  1523. X+ M;&4@>6]U<B`N15A%(&9I;&4A(%EO=2!D:64N#0H')`T*)%!345)65U4>!HS8
  1524. X+ M!1``+J,``(X>``"^__]&@SP`=?J#Q@2P`+0]B];-(7,(L`6Z``#I```NHP``
  1525. X+ MN```+J,``+L`";1(S2%S`^D``([`M$B[___-(;1(S2%S`^D``"[&!@```"ZC
  1526. X+ M``"X``".V(L.```NB0X``(L.```NB0X``"O9<P/I``!3M$G-(7,#Z0``,^TS
  1527. X+ M_S/VZ```+J$``"X#!@``CL`SP":C```FHP``)J,``":B```NH0``T>#1X-'@
  1528. X+ MT>#1X"Z+%@``"])T#M'JT>K1ZM'J0BT@``/")J,``"XK!@``+H,^````=`L[
  1529. X+ MQW('B_@FBS8``":)+@``+@,N``"+U8K.BO(R[3+2T>+1T;``M$+-(2ZA``!(
  1530. X+ M+CL&``!T`^D``%8NH0``CL`NBS8``"X#-@``)L8&````)HDV`@`FQP8$````
  1531. X+ M)HD^"``#^"Z)/@``CL8FQ@8````FQP8"````)J,$`%Y;)HD>"``NHP``+L<&
  1532. X+ M`````"['!@````"X```NHP``B_@NQP7__X/'!BZA```NB04NB3X``([`)L8&
  1533. X+ M```'1CO><PBP!;H``.D``+@``([8M#6@``#-(2Z)'@``+HP&``"T-;`AS2$N
  1534. X+ MB1X``"Z,!@``N```CMBT):```(S+CMNZ``#-(;0EL"&,RX[;N@``S2$NBPX`
  1535. X+ M`+@``([`C,B.V+L``+X``+\``":*!#+D`P8``(D%)HL'*P8``(E%`H/'!(/#
  1536. X+ M`D;BX@<?75]>6EE;6.H`````+HD>```NC`8``%L'4%8FBT<!+J,``#+D)HH'
  1537. X+ M@\,#+HLV```NC$0"+HE<!(O8T>/1XX'#```NC@<NBT<"+HQ$!BZ#!@``!BZ+
  1538. X+ M-@``1BZ)-@``)HDV``!T;";V!@```71V)@,&```NHP``+HL>```NC@8``%Y8
  1539. X+ MG2[_'@``G"Z,!@``+HD>```NBQX``"Z.1_HN_W?\+O]W_E$NBPX``$$NB0X`
  1540. X+ M`":)#@``=#$F]@8```%T.RZ#+@``!BZ+'@``+HX&``!9SRZ+-@``1BZ)-@``
  1541. X+ M)HDV``#K@N@``.N%+HL.``!!+HD.```FB0X``.N]Z```Z\!04U%25E=5'@8N
  1542. X+ M@#X```!T`^@``.@``";V!@``!'4*)J$``.@*G,,"Q+T``P,4`,3!``$!+`#$
  1543. X+ MW``#`[\&A-\``P..#L3C!`,#R.8F`@+$Z@`#`PX`A/8``P.8"(4(``,#F`C%
  1544. X+ M#0`#`QX`Q1(``P,,`,D5)@<'Q1LF!@;%(``#`PH`Q20F!P?%*0`#`P@`A3``
  1545. X+ M`P.8"(4Z``,#F`B%0P`#`VH.Q4<``P,,`,5,``,#00#%5``"`@H`Q5@``@(,
  1546. X+ M`,5<``("!`#%8`0"`L5D``,#*P#%<P`#`RD`Q8D``@((`,6.``,#+P#%DP`#
  1547. X+ M`T$`Q:$``@((`,6F``("!@#%JP`#`RL`Q<,``P,(`,7)``,#00"%S@`#`X4'
  1548. X+ MQ=,``P,.`,7:``,##`#%WP`#`P@`Q?T``P,0`,8;``,#$@#&(``#`P(`QB<`
  1549. X+ M`P,$`,8L``,#0P#&,``#`P8`QCX``P,,`,9&``,#!@#&300"`L98``,#0P:&
  1550. X+ M6P`#`XX.REXF`0'&928!`<9L``,#%@#&<0`#`Q@`QGP``P,:`,:!``,#'`#*
  1551. X+ MA"8!`<:+)@$!QI(``P,I"<:?``,#B`O&I@`#`PH`RJDF!`3&LB8$!,:U)@,#
  1552. X+ MQK@``P-#`L;!``,##`#&R@`#`PX`SN(F!07&Z0`#`Q\`QNX``P,A`,;Z``,#
  1553. X+ M(P#'!P`#`P8`QQD``P-#`L<I``,#!@#'+P`#`P(`QS4``P,"`,<Z``(""@#'
  1554. X+ M000"`L=)``("!`#'30`#`R4`QU(``P,?`,=7``,#(0#'7P`#`R,`QV4``P,A
  1555. X+ M`,=J``,#'P#';P`#`P8`QX$``P,"`,>'``,#`@#'C``"`@H`QY,$`@+'FP`#
  1556. X+ M`P8`QZ$``P,?`,>F``,#(0#'K0`#`P0`Q[,``P,$`,>X``("#`"'O0`#`QL*
  1557. X+ MQ\0``P,$`,?*``,#!`#'SP`"`@P`A]0``P,;"L?D``,#'@"'Z@`#`R8,A^T`
  1558. X+ M`P-2"\?R!`("Q_D``@((`-N@``0#/PH``.L$D.@``":C```%`0".V":+%@``
  1559. X+ MBLZ*\C+M,M+1XM'1M$*P`"Z+'@``S2%R*#/2)HL.``#1X='AT>'1X;0_S2%R
  1560. X+ M$^@```<F@`X```$?75]>6EE;6,.P!;H``.D``(L.!@",V`,&"``FHP``B_@N
  1561. X+ M*SX``(LV&`#C*JV+V*TN`P8```/'CL`FBP<N`P8``"X[!@``<@DN.P8``',"
  1562. X+ M`\<FB0?BUL-345)65U4>+HX>```SP(O0B^B+V"Z+#@``]H<```%T*?:'```"
  1563. X+ M=2(NBS8``"Z+/@``*[<``!N_```[UW(&=0H[QG,&B\:+UXOK@\,0XLL+[74(
  1564. X+ ML`6Z``#I``#1[='MT>W1[8S8`\4?75]>6EE;PP8NC@8``"Z+#@``,]LF@*<`
  1565. X+ M`/N#PQ#B]2Z+'@``@^L&ZPR0+HX?@`X```2#ZP8N@S__=>\'PX#\2W05@/Q,
  1566. X+ M=`4N_RX``%A86+``N@``Z0``4%-14E97508>+J$``.L=CM@N.P8``'(1]@8`
  1567. X+ M``%T"HX&!@`F@"8``/ZA`@`+P'7?+J$``"X#!@``CL`FQP8(``(`)L<&`@``
  1568. X+ M`";&!@```"[&!@``_RZ+%@``+HX>``"T);`AS2$NC@8``"Z+'@``@\,"M$K-
  1569. X+ M(1\'75]>6EE;6"[_+@``!K1*+HX&``"[___-(;1*+HX&``!3S2$NQ@8````N
  1570. X+ MH0``+@,&``".P%@N*P8``":C"`"T-;`AS2$NB1X``"Z,!@``M"6P(8S+CMNZ
  1571. X+ M``#-(0?#)HL>```NH0``ZU>0CM@[V',4B],F`Q8``(/"`3O"<S_H``#K#)`#
  1572. X+ M!@@`.]AS,>@``(S8.]AR*(O3)@,6``"#P@$#!@@`.\)R%HS8B\LKR'0#Z```
  1573. X+ M)HL.``"#P0'K+9"A`@`+P'0"ZZ2P!;H``.D``(O(@\$!Z```.]%S#.@``.@`
  1574. X+ M`#D."`!R].L!D`:`#@```8S8`\&.P*$(`"O!/0$`<C6)#@@`)J,(`*$"`":C
  1575. X+ M`@",!@(`)HP>!``FQ@8````>)J$"``O`=`:.V(P&!`",P([8Z```'P>,!@8`
  1576. X+ MC-C#!HS8`\&.P*$(`"O!B0X(`":C"`"A`@`FHP(`C`8"`":,'@0`Q@8````F
  1577. X+ M@`X```$FH0(`"\!T"!Z.V(P&!``?Z```C,".V`>,!@8`C-C#+J$``#/2ZQB0
  1578. X+ MCMCV!@```74+.0X(`'(%BQ8(`,.A`@`+P'7EP_8&```!=`P&C@8&`":`)@``
  1579. X+ M_@?K$)".V(`F``#^H0``CMCK`9`&@"8``/ZA!``+P'0RCL`F]@8```%U*"8#
  1580. X+ M!@@`C-H[T'4=H0@`)@$&"`"A`@`FHP(`"\!T!H[8C`8$`(S`CMBA`@`+P'0P
  1581. X+ MCL`F]@8```$;G.X!A````P/G#(0&``,#=PS$"@`"`@(`Q!0``@(&`,0I!`,#
  1582. X+ MQ#0``@((`(1%``,#G@K$2P0"`L1:``,#OP:$70`#`XX.Q&L``@($`,1R``,#
  1583. X+ M#@#$@0`#`Q0`Q(T``P,4`,22``,##@#$F0`#`Q``Q*\``P,,`,2\``,#"`#$
  1584. X+ MP`0"`L3'!`("Q,\``P,"`,34``,#!`#$V``"`@H`Q-P``@(,`,3Z``,#B`:$
  1585. X+ M_0`#`XX.Q1<``P,,`,4<``,#"`#%(P0"`L4N``,#!@#%.P0"`L56``,#&@#%
  1586. X+ M7@`#`^T&A6$``P..#L5N``,#$@#%=P`#`PP`Q8D$`@+%E0`#`PP`Q9H``P,(
  1587. X+ M`,6U``,#'@#%NP`#`QH`Q<```P,<`,7+``,##`#%T``#`P@`Q>4``P,:`,7M
  1588. X+ M``,##`#%^0`#`PP`Q@$``P,>`,8&``,##`#&"P`#`P@`QA,``P,(`,8B``,#
  1589. X+ M&@#&)P`#`QP`QC(``P.("\8[``("`@#&/P`#`Q(`QD\``@((`(99``,#R`V&
  1590. X+ M9P`#`\@-QG0``@((`(:*``,#50W&CP`"`@@`QJ,``P.(!H:F``,#C@Z&K@`#
  1591. X+ M`Z,-AK4``P/D"H:X``,#W@V'"P`#`^T-AU8``P/M#<=F``,#$@#'F`0"`L>C
  1592. X+ M!`("QZ<``@("`*"@L0`#.PYU)HS8`P8(`(S".\)U&B:A"``!!@@`)J$"`*,"
  1593. X+ M``O`=`>.P":,'@0`@"8``/X'PU&,R([8N@``+HL>``"Y'`"T/\TA<@8[P74"
  1594. X+ M6<.P!;H``.L!D%",R([8M`G-(2Z+%@``@_K_=`X>+HX>``"T):```,TA'RZ+
  1595. X+ M%@``@_K_=`T>+HX>``"T);`AS2$?+J$``#W__W0&CL"T2<TA+HL>``"#^_]T
  1596. X+ M!+0^S2%8M$S-(>F<00#$-0`#`R<`Q#H$`P/$3@`#`[\&Q%\``P,6`,1J``,#
  1597. X+ G&`#$;R8!`<1W``,#&@#$@@`#`QP`Q(T``P,,`,2=!`,#H8H"``!T
  1598. X+ `
  1599. X+ end
  1600. END_OF_FILE
  1601. if test 55103 -ne `wc -c <'patches06c'`; then
  1602.     echo shar: \"'patches06c'\" unpacked with wrong size!
  1603. fi
  1604. # end of 'patches06c'
  1605. fi
  1606. echo shar: End of archive 5 \(of 15\).
  1607. cp /dev/null ark5isdone
  1608. MISSING=""
  1609. for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ; do
  1610.     if test ! -f ark${I}isdone ; then
  1611.     MISSING="${MISSING} ${I}"
  1612.     fi
  1613. done
  1614. if test "${MISSING}" = "" ; then
  1615.     echo You have unpacked all 15 archives.
  1616.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  1617. else
  1618.     echo You still need to unpack the following archives:
  1619.     echo "        " ${MISSING}
  1620. fi
  1621. ##  End of shell archive.
  1622. exit 0
  1623.